blob: b6ac5554b1214ec6fbf56f8b3302cb5c1987ec16 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# frozen_string_literal: true
# Gentoo defaults for rubygems 3.x
#
# Gentoo policy is to install all manually installed code into
# /usr/local and to keep /usr managed by Gentoo. This policy file
# ensures that all manually installed gems using "gem install" as root
# are installed in /usr/local. Gentoo gems are installed in /usr.
module Gem
class << self
def gentoo_gems_dir
RbConfig::CONFIG['sitelibdir'].gsub('site_ruby', 'gems')
end
def gentoo_bindir
Process.euid.zero? ? '@GENTOO_PORTAGE_EPREFIX@/usr/local/bin' : File.join(user_home, 'bin')
end
def gentoo_local_dir
gentoo_gems_dir.gsub('@GENTOO_PORTAGE_EPREFIX@/usr',
'@GENTOO_PORTAGE_EPREFIX@/usr/local')
end
def gentoo_install_dir
Process.euid.zero? ? gentoo_local_dir : user_dir
end
undef :default_path
def default_path
path = []
path << user_dir if user_home && File.exist?(user_home)
path << default_dir
path << vendor_dir if vendor_dir && File.directory?(vendor_dir)
path << gentoo_local_dir
path << gentoo_gems_dir
end
def operating_system_defaults
options = "--install-dir #{gentoo_install_dir} --bindir #{gentoo_bindir}"
{
'install' => options,
'uninstall' => options,
'update' => options
}
end
end
end
|