Class: Plat4m::Sniffer::Windows::Pacman

Inherits:
PkgManager
  • Object
show all
Defined in:
lib/plat4m/sniff/windows.rb

Instance Method Summary collapse

Methods inherited from PkgManager

#has_sudo?, #is_root?, #select_available, #select_uninstalled, #uninstall

Constructor Details

#initialize(_distro) ⇒ Pacman

Returns a new instance of Pacman.



52
53
54
# File 'lib/plat4m/sniff/windows.rb', line 52

def initialize(_distro)
  super()
end

Instance Method Details

#available?(pkg) ⇒ Boolean

Returns:

  • (Boolean)


72
73
74
# File 'lib/plat4m/sniff/windows.rb', line 72

def available?(pkg)
  run(%Q[pacman -Ss '^#{pkg}$'], silent: true)
end

#install(*pkgs, silent: false) ⇒ Object



60
61
62
# File 'lib/plat4m/sniff/windows.rb', line 60

def install(*pkgs, silent: false)
  run(make_install_command, silent: silent)
end

#installed?(pkg) ⇒ Boolean

Returns:

  • (Boolean)


68
69
70
# File 'lib/plat4m/sniff/windows.rb', line 68

def installed?(pkg)
  run("pacman -Qq #{pkg}", silent: true)
end

#make_install_command(*pkgs) ⇒ Object



56
57
58
# File 'lib/plat4m/sniff/windows.rb', line 56

def make_install_command(*pkgs)
  pacman_cmd("-S --needed #{ pkgs.join(' ') }")
end

#make_uninstall_command(*pkgs) ⇒ Object



64
65
66
# File 'lib/plat4m/sniff/windows.rb', line 64

def make_uninstall_command(*pkgs)
  pacman_cmd("-Rsu #{pkgs.flatten.join(' ')}")
end