Module: Evesync::OS::PackageManager
- Defined in:
- lib/evesync/os/linux/rhel/package_manager.rb,
lib/evesync/os/linux/deb/package_manager.rb,
lib/evesync/os/linux/arch/package_manager.rb
Overview
Manages package manager things TODO: trigger package_watcher event to update database
Class Method Summary collapse
- .apt_get(cmd, name, version) ⇒ Object
- .downgrade(*args) ⇒ Object
- .exist?(name, version) ⇒ Boolean
- .install(*args) ⇒ Object
- .pacman(cmd, name, _version) ⇒ Object
- .remove(*args) ⇒ Object
-
.update(*args) ⇒ Object
FIXME: update and downgrade specific version is not fine.
- .yum(cmd, name, version) ⇒ Object
Class Method Details
.apt_get(cmd, name, version) ⇒ Object
25 26 27 28 |
# File 'lib/evesync/os/linux/deb/package_manager.rb', line 25 def apt_get(cmd, name, version) Log.debug("Apt-get command: '#{cmd}' on #{name}=#{version}") system("apt-get --assume-yes #{cmd} #{name}=#{version}") end |
.downgrade(*args) ⇒ Object
20 21 22 23 |
# File 'lib/evesync/os/linux/deb/package_manager.rb', line 20 def downgrade(*args) apt_get('install', *args) exist?(*args) end |
.exist?(name, version) ⇒ Boolean
30 31 32 33 34 |
# File 'lib/evesync/os/linux/deb/package_manager.rb', line 30 def exist?(name, version) Log.debug("Dpkg checking if exists: #{name}-#{version}") `dpkg-query -l #{name}` $CHILD_STATUS == 0 end |
.install(*args) ⇒ Object
5 6 7 8 |
# File 'lib/evesync/os/linux/deb/package_manager.rb', line 5 def install(*args) apt_get('install', *args) exist?(*args) end |
.pacman(cmd, name, _version) ⇒ Object
25 26 27 |
# File 'lib/evesync/os/linux/arch/package_manager.rb', line 25 def pacman(cmd, name, _version) `pacman #{cmd} #{name}` # FIXME: do smth with version end |
.remove(*args) ⇒ Object
10 11 12 13 |
# File 'lib/evesync/os/linux/deb/package_manager.rb', line 10 def remove(*args) apt_get('remove', *args) !exist?(*args) end |
.update(*args) ⇒ Object
FIXME: update and downgrade specific version is not fine
17 18 19 20 |
# File 'lib/evesync/os/linux/arch/package_manager.rb', line 17 def update(*args) apt_get('upgrade', *args) exist?(*args) end |
.yum(cmd, name, version) ⇒ Object
33 34 35 36 |
# File 'lib/evesync/os/linux/rhel/package_manager.rb', line 33 def yum(cmd, name, version) Log.debug("Yum command: '#{cmd}' on #{name}-#{version}") system("yum --assumeyes #{cmd} #{name}-#{version}") end |