# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 8 def default_ext_dependencies get_basic_deps end
# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 4 def dep_files %w[fedora.yml] end
# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 16 def ext_dependency_present? dep_name system("rpm -q #{dep_name} > /dev/null 2>&1") end
# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 12 def gem_ext_dependencies_for gem_name default_ext_dependencies + get_deps(gem_name) end
# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 20 def install_ext_dependencies_for gem_name, deps install_using_packagekit deps end
# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 30 def install_using_packagekit(names=[]) begin require 'dbus' session_bus = DBus::SessionBus.instance pkg_kit = session_bus.introspect("org.freedesktop.PackageKit", "/org/freedesktop/PackageKit") pkg_kit['org.freedesktop.PackageKit.Modify'].InstallPackageNames(0, names, 'show-confirm-install') # DBus is not availabe in non-X environment. rescue Errno::ENOENT install_using_yum names rescue LoadError say "To use PackageKit installation, 'ruby-dbus' package needs to be installed. (yum install rubygem-ruby-dbus)" install_using_yum names end end
# File lib/rubygems/nice_install/fedora_ext_installer.rb, line 26 def install_using_yum(names=[]) system "su -c 'yum install #{names.join(' ')}'" end