gem-nice-install 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/data/fedora.yml +2 -0
- data/lib/rubygems/nice_install.rb +2 -1
- data/lib/rubygems/nice_install/distro_guesser.rb +1 -1
- data/lib/rubygems/nice_install/fedora_ext_installer.rb +24 -5
- metadata +35 -18
- metadata.gz.sig +0 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: f4ebbb26300012c3a27812b267b8881111faa73b
|
4
|
+
data.tar.gz: 9d5fb02970385ab36f4006ffe798e176b287f457
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d48b025999be486ca0872c5089cc97462baaf15324dc2c1f36935b03f178e43fa68cf9e204913cde12f3609d323742f8774fa46abba5233b559b43365dd4c30e
|
7
|
+
data.tar.gz: a0c29dbdc5a1a5ede4c5d511418339e2526417e6c5fd07b1254daa2a045844fa7dd06f87624880ba4228f6bc03feff51d117caa24ac425cd48599f54517c651b
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data.tar.gz.sig
ADDED
Binary file
|
data/data/fedora.yml
CHANGED
@@ -9,6 +9,7 @@ module Gem
|
|
9
9
|
|
10
10
|
class Installer
|
11
11
|
module Nice
|
12
|
+
require 'rubygems/user_interaction'
|
12
13
|
require 'rubygems/nice_install/distro_guesser'
|
13
14
|
|
14
15
|
include Gem::UserInteraction
|
@@ -31,7 +32,7 @@ module Gem
|
|
31
32
|
end
|
32
33
|
|
33
34
|
unless missing_deps.empty?
|
34
|
-
say "
|
35
|
+
say "Trying to install native dependencies for Gem '#{spec.name}': #{missing_deps.join ' '}"
|
35
36
|
unless ext_installer.install_ext_dependencies_for(spec.name, missing_deps)
|
36
37
|
raise Gem::InstallError, "Failed to install native dependencies for '#{spec.name}'."
|
37
38
|
end
|
@@ -17,7 +17,7 @@ module Gem::Installer::Nice
|
|
17
17
|
|
18
18
|
def self.distro_ext_installer
|
19
19
|
require "rubygems/nice_install/#{distro}_ext_installer"
|
20
|
-
klass = Gem::Installer::Nice.const_get("#{distro.capitalize}ExtInstaller")
|
20
|
+
klass = Gem::Installer::Nice.const_get("#{distro.to_s.capitalize}ExtInstaller")
|
21
21
|
klass.new if klass && klass != BaseExtInstaller
|
22
22
|
end
|
23
23
|
|
@@ -18,13 +18,29 @@ module Gem::Installer::Nice
|
|
18
18
|
end
|
19
19
|
|
20
20
|
def install_ext_dependencies_for gem_name, deps
|
21
|
-
install_using_packagekit
|
21
|
+
install_using_packagekit(deps) \
|
22
|
+
|| install_using_dnf(deps) \
|
23
|
+
|| install_using_yum(deps)
|
22
24
|
end
|
23
25
|
|
24
26
|
private
|
25
27
|
|
28
|
+
def install_using_dnf(names=[])
|
29
|
+
if system("dnf --help > /dev/null 2>&1")
|
30
|
+
system "su -c 'dnf install #{names.join(' ')}'"
|
31
|
+
else
|
32
|
+
say "DNF is not available."
|
33
|
+
false
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
26
37
|
def install_using_yum(names=[])
|
27
|
-
system
|
38
|
+
if system("yum --help > /dev/null 2>&1")
|
39
|
+
system "su -c 'yum install #{names.join(' ')}'"
|
40
|
+
else
|
41
|
+
say "YUM is not available."
|
42
|
+
false
|
43
|
+
end
|
28
44
|
end
|
29
45
|
|
30
46
|
def install_using_packagekit(names=[])
|
@@ -35,10 +51,13 @@ module Gem::Installer::Nice
|
|
35
51
|
pkg_kit['org.freedesktop.PackageKit.Modify'].InstallPackageNames(0, names, 'show-confirm-install')
|
36
52
|
# DBus is not availabe in non-X environment.
|
37
53
|
rescue Errno::ENOENT
|
38
|
-
|
54
|
+
say "PackageKit failed. DBus activation failed."
|
55
|
+
false
|
39
56
|
rescue LoadError
|
40
|
-
say "
|
41
|
-
|
57
|
+
say "PackageKit failed. 'rubygem-ruby-dbus' package needs to be installed."
|
58
|
+
false
|
59
|
+
else
|
60
|
+
true
|
42
61
|
end
|
43
62
|
end
|
44
63
|
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gem-nice-install
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.3.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Vít Ondruch
|
@@ -11,51 +10,69 @@ authors:
|
|
11
10
|
- Michal Fojtik
|
12
11
|
autorequire:
|
13
12
|
bindir: bin
|
14
|
-
cert_chain:
|
15
|
-
|
13
|
+
cert_chain:
|
14
|
+
- |
|
15
|
+
-----BEGIN CERTIFICATE-----
|
16
|
+
MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBBMRIwEAYDVQQDDAl2Lm9u
|
17
|
+
ZHJ1Y2gxFzAVBgoJkiaJk/IsZAEZFgd0aXNjYWxpMRIwEAYKCZImiZPyLGQBGRYC
|
18
|
+
Y3owHhcNMTQxMjA0MTMyNDA3WhcNMTUxMjA0MTMyNDA3WjBBMRIwEAYDVQQDDAl2
|
19
|
+
Lm9uZHJ1Y2gxFzAVBgoJkiaJk/IsZAEZFgd0aXNjYWxpMRIwEAYKCZImiZPyLGQB
|
20
|
+
GRYCY3owggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCdw3QyZX/I96ds
|
21
|
+
cNDN12zTyvF0xX7DF59bDknSsm0cnor9hfK9okgZSaFqzkbVoxqjTp3eTZ6jfWi6
|
22
|
+
/uU0mDASkuC2RjZLKYmVYlydVbicAAu4AQwCqVcDisx2v8CJZZ9CKjxIj5/mIDPh
|
23
|
+
54cXNKxagZUCl1b4oI+HdGtR5l1opxcm9UGM4ff1BJjTBlydvYnrROmGqAXuPHY5
|
24
|
+
+l9CsFwPwxQPTfE4VVcDUVmMQ/IORgocSVhx1mHxTZlEBweP4GJ59phAeDl4Vt8h
|
25
|
+
2Zok26KN1rok3Jq+iSEw9DuJtoHqgNjGNPNtZOA9knAQOrnPidlibKdfDG53GBKW
|
26
|
+
ZIbhk+pfAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
27
|
+
BBSVtjoVmQK/PkQOwue1qIXjLS7rjjAfBgNVHREEGDAWgRR2Lm9uZHJ1Y2hAdGlz
|
28
|
+
Y2FsaS5jejAfBgNVHRIEGDAWgRR2Lm9uZHJ1Y2hAdGlzY2FsaS5jejANBgkqhkiG
|
29
|
+
9w0BAQUFAAOCAQEAewzbZ+U7K0HZKyezyny8txhuLL21JCT4Vv6NbHbmdtn+UXma
|
30
|
+
0m24dKlBsYU6tzZA4J7By+ARGn6xTssv4LnL3a+Yl/S69oCyjmCaxmkRt+6LMaQo
|
31
|
+
V3UO37rdJCCowWcP1k7rU+KsT/2V3mhBliTjYHH/RyEeqlJ9/3JazlCdYbLWobqO
|
32
|
+
m3oVhvQvTkxDCHSsYga0FQt6a26k+fX65GAyjY/fJWmceetOyax4e+5xjZ9fKEik
|
33
|
+
YpMJ590rUNfDhbfYuAY0l6VDmajngEKkdxCEP0v6KBQeOmH3/+oOxcSVnc3NAp2J
|
34
|
+
eE+DjyUv9Cq0yBFpfdrGk1fHwX/dtWcFrsKNxw==
|
35
|
+
-----END CERTIFICATE-----
|
36
|
+
date: 2015-04-16 00:00:00.000000000 Z
|
16
37
|
dependencies: []
|
17
|
-
description:
|
18
|
-
If binary extension build fails,
|
19
|
-
|
38
|
+
description: |
|
39
|
+
A RubyGems plugin that improves gem installation user experience. If binary extension build fails,
|
20
40
|
it tries to install its development dependencies.
|
21
|
-
|
22
|
-
'
|
23
41
|
email: vondruch@gmail.com
|
24
42
|
executables: []
|
25
43
|
extensions: []
|
26
44
|
extra_rdoc_files: []
|
27
45
|
files:
|
28
|
-
- README.md
|
29
46
|
- MIT
|
47
|
+
- README.md
|
30
48
|
- data/fedora.yml
|
31
|
-
- lib/rubygems/nice_install
|
49
|
+
- lib/rubygems/nice_install.rb
|
32
50
|
- lib/rubygems/nice_install/base_ext_installer.rb
|
51
|
+
- lib/rubygems/nice_install/distro_guesser.rb
|
33
52
|
- lib/rubygems/nice_install/fedora_ext_installer.rb
|
34
|
-
- lib/rubygems/nice_install.rb
|
35
53
|
- lib/rubygems_plugin.rb
|
36
54
|
homepage: https://github.com/voxik/gem-nice-install
|
37
55
|
licenses:
|
38
56
|
- MIT
|
57
|
+
metadata: {}
|
39
58
|
post_install_message:
|
40
59
|
rdoc_options: []
|
41
60
|
require_paths:
|
42
61
|
- lib
|
43
62
|
required_ruby_version: !ruby/object:Gem::Requirement
|
44
|
-
none: false
|
45
63
|
requirements:
|
46
|
-
- -
|
64
|
+
- - ">="
|
47
65
|
- !ruby/object:Gem::Version
|
48
66
|
version: '0'
|
49
67
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
68
|
requirements:
|
52
|
-
- -
|
69
|
+
- - ">="
|
53
70
|
- !ruby/object:Gem::Version
|
54
71
|
version: '0'
|
55
72
|
requirements: []
|
56
73
|
rubyforge_project:
|
57
|
-
rubygems_version:
|
74
|
+
rubygems_version: 2.2.2
|
58
75
|
signing_key:
|
59
|
-
specification_version:
|
76
|
+
specification_version: 4
|
60
77
|
summary: A RubyGems plugin that improves gem installation user experience.
|
61
78
|
test_files: []
|
metadata.gz.sig
ADDED
Binary file
|