Class: Babushka::GemHelper
Class Method Summary
collapse
Methods inherited from PkgHelper
all_manager_keys, cmd_in_path?, handle_install!, has?, pkg_binary, prefix, present?, update_pkg_lists, update_pkg_lists_if_required
cmd_dir, current_username, log_shell, login_shell, raw_shell, shell, shell!, shell?, shell_cmd, sudo, which
Methods included from LogHelpers
debug, deprecated!, log, log_block, log_error, log_ok, log_stderr, log_warn, removed!
Class Method Details
21
22
23
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 21
def bin_path
Babushka.ruby.bin_dir
end
|
.gem_path_for(gem_name, version = nil) ⇒ Object
15
16
17
18
19
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 15
def gem_path_for gem_name, version = nil
unless (detected_version = has?(Babushka.VersionOf(gem_name, version), :log => false)).nil?
Babushka.ruby.gem_dir / Babushka.VersionOf(gem_name, detected_version)
end
end
|
25
26
27
28
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 25
def gem_root
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.gem_root', :instead => 'Babushka.ruby.gem_dir'
Babushka.ruby.gem_dir
end
|
35
36
37
38
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 35
def gemdir
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.gemdir'
Babushka.ruby.send(:gem_env).val_for('INSTALLATION DIRECTORY')
end
|
.gemspec_dir ⇒ Object
30
31
32
33
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 30
def gemspec_dir
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.gemspec_dir', :instead => 'Babushka.ruby.gemspec_dir'
Babushka.ruby.gemspec_dir
end
|
.install!(pkgs, opts = nil) ⇒ Object
9
10
11
12
13
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 9
def install! pkgs, opts = nil
super.tap {
shell!('rbenv rehash') if Babushka.ruby.rbenv?
}
end
|
.manager_dep ⇒ Object
7
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 7
def manager_dep; 'rubygems' end
|
.manager_key ⇒ Object
6
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 6
def manager_key; :gem end
|
5
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 5
def pkg_cmd; 'gem' end
|
4
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 4
def pkg_type; :gem end
|
.ruby_arch ⇒ Object
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 60
def ruby_arch
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.ruby_arch'
if RUBY_PLATFORM =~ /universal/
"universal"
elsif RUBY_PLATFORM == "java"
"java"
elsif RUBY_PLATFORM =~ /darwin/
shell("file -L '#{Babushka.ruby.path}'").sub(/.* /, '')
else
Babushka.host.cpu_type
end
end
|
.ruby_binary_slug ⇒ Object
74
75
76
77
78
79
80
81
82
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 74
def ruby_binary_slug
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.ruby_binary_slug'
[
(defined?(RUBY_ENGINE) ? RUBY_ENGINE : 'ruby'),
RUBY_VERSION,
ruby_arch,
(RUBY_PLATFORM['darwin'] ? 'macosx' : RUBY_PLATFORM.sub(/^.*?-/, ''))
].join('-')
end
|
.ruby_path ⇒ Object
40
41
42
43
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 40
def ruby_path
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.ruby_path', :instead => 'Babushka.ruby.path'
Babushka.ruby.path
end
|
.ruby_wrapper_path ⇒ Object
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 45
def ruby_wrapper_path
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.ruby_wrapper_path'
if Babushka.ruby.path.to_s['/.rvm/rubies/'].nil?
Babushka.ruby.path
else
Babushka.ruby.path.sub(
/^(.*)\/\.rvm\/rubies\/([^\/]+)\/bin\/ruby/
) {
"#{$1}/.rvm/wrappers/#{$2}/ruby"
}
end
end
|
.should_sudo? ⇒ Boolean
89
90
91
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 89
def should_sudo?
super || (Babushka.ruby.gem_dir.exists? && !Babushka.ruby.gem_dir.writable?)
end
|
.slug_for(ruby) ⇒ Object
84
85
86
87
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 84
def slug_for ruby
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.slug_for'
shell %Q{#{ruby} -e "require '#{Babushka::Path.lib / 'babushka'}'; puts Babushka::GemHelper.ruby_binary_slug"}
end
|
93
94
95
96
|
# File 'lib/babushka/pkg_helpers/gem_helper.rb', line 93
def version
deprecated! '2013-04-28', :method_name => 'Babushka::GemHelper.version', :instead => 'Babushka.ruby.gem_version'
Babushka.ruby.gem_version
end
|