rvm 0.0.999 → 0.0.9999
Sign up to get free protection for your applications and to get access to all the features.
- data/config/db +18 -15
- data/config/md5 +13 -8
- data/install +2 -2
- data/lib/VERSION.yml +1 -1
- data/rvm.gemspec +3 -2
- data/scripts/cd +7 -7
- data/scripts/cli +3 -2
- data/scripts/gems +7 -5
- data/scripts/install +2 -2
- data/scripts/maglev +196 -0
- data/scripts/manage +107 -13
- data/scripts/notes +9 -6
- data/scripts/rvm-install +2 -2
- data/scripts/selector +58 -11
- data/scripts/update +2 -2
- metadata +3 -2
data/config/db
CHANGED
@@ -1,20 +1,12 @@
|
|
1
1
|
niceness=0
|
2
2
|
ruby_repo_url=http://svn.ruby-lang.org/repos/ruby
|
3
|
-
rubinius_repo_url=git://github.com/evanphx/rubinius.git
|
4
|
-
shyouhei_repo_url=git://github.com/shyouhei/ruby.git
|
5
|
-
macruby_version=nightly
|
6
|
-
macruby_repo_url=git://git.macruby.org/macruby/MacRuby.git
|
7
|
-
macruby_nightly_url=http://macruby.icoretech.org/latest/macruby_nightly-latest.pkg
|
8
|
-
jruby_version=1.4.0
|
9
|
-
jruby_repo_url=git://github.com/jruby/jruby.git
|
10
|
-
jruby_url=http://jruby.kenai.com/downloads/
|
11
|
-
ironruby_version=0.9.3
|
12
|
-
ironruby_repo_url=git://github.com/ironruby/ironruby.git
|
13
|
-
ironruby_url=http://cloud.github.com/downloads/nrk/ironruby/
|
14
3
|
ruby_configure=--enable-shared
|
15
4
|
interpreter=ruby
|
16
5
|
ruby_version=1.8.6
|
17
6
|
ruby_patchlevel=383
|
7
|
+
rbx_version=1.0.0
|
8
|
+
rbx_patch_level=rc2
|
9
|
+
rbx_url=http://asset.rubini.us/rubinius-1.0.0-rc2-20100104.tar.gz
|
18
10
|
ree_version=1.8.7
|
19
11
|
ree_1.8.6_patch_level=20090610
|
20
12
|
ree_1.8.6_url=http://rubyforge.org/frs/download.php/58677
|
@@ -22,11 +14,22 @@ ree_1.8.6_repo_url=git://github.com/FooBarWidget/rubyenterpriseedition.git
|
|
22
14
|
ree_1.8.7_url=http://rubyforge.org/frs/download.php/66162
|
23
15
|
ree_1.8.7_repo_url=git://github.com/FooBarWidget/rubyenterpriseedition187.git
|
24
16
|
ree_1.8.7_patch_level=2009.10
|
25
|
-
|
26
|
-
rbx_patch_level=rc2
|
27
|
-
rbx_url=http://asset.rubini.us/rubinius-1.0.0-rc2-20100104.tar.gz
|
28
|
-
ruby_1.9.1_patch_level=376
|
17
|
+
ruby_1.9.1_patch_level=378
|
29
18
|
ruby_1.9.2_patch_level=preview1
|
30
19
|
ruby_1.8.5_patch_level=231
|
31
20
|
ruby_1.8.6_patch_level=383
|
32
21
|
ruby_1.8.7_patch_level=248
|
22
|
+
jruby_version=1.4.0
|
23
|
+
jruby_repo_url=git://github.com/jruby/jruby.git
|
24
|
+
jruby_url=http://jruby.kenai.com/downloads/
|
25
|
+
macruby_version=nightly
|
26
|
+
macruby_repo_url=git://git.macruby.org/macruby/MacRuby.git
|
27
|
+
macruby_nightly_url=http://macruby.icoretech.org/latest/macruby_nightly-latest.pkg
|
28
|
+
maglev_version=22710
|
29
|
+
maglev_url=http://glass-downloads.gemstone.com/maglev
|
30
|
+
maglev_repo_url=git://github.com/MagLev/maglev.git
|
31
|
+
rubinius_repo_url=git://github.com/evanphx/rubinius.git
|
32
|
+
shyouhei_repo_url=git://github.com/shyouhei/ruby.git
|
33
|
+
ironruby_version=0.9.3
|
34
|
+
ironruby_repo_url=git://github.com/ironruby/ironruby.git
|
35
|
+
ironruby_url=http://cloud.github.com/downloads/nrk/ironruby/
|
data/config/md5
CHANGED
@@ -1,11 +1,3 @@
|
|
1
|
-
curl-7.19.7.tar.gz=ecb2e37e45c9933e2a963cabe03670ab
|
2
|
-
jruby-bin-1.3.1.tar.gz=4a95db8fc93ed7219663fbede98b6117
|
3
|
-
jruby-bin-1.4.0.tar.gz=f37322c18e9134e91e064aebb4baa4c7
|
4
|
-
libiconv-1.13.1.tar.gz=7ab33ebd26687c744a37264a330bbe9a
|
5
|
-
ncurses.tar.gz=cce05daf61a64501ef6cd8da1f727ec6
|
6
|
-
openssl-0.9.8k.tar.gz=e555c6d58d276aec7fdc53363e338ab3
|
7
|
-
readline-5.2.tar.gz=e39331f32ad14009b9ff49cc10c5e751
|
8
|
-
readline-6.0.tar.gz=b7f65a48add447693be6e86f04a63019
|
9
1
|
rubinius-1.0.0-rc1-20091125.tar.gz=c1cf037f05caf1bc962c09e220b435f4
|
10
2
|
ruby-1.8.5-p115.tar.gz=20ca6cc87eb077296806412feaac0356
|
11
3
|
ruby-1.8.5-p231.tar.gz=e900cf225d55414bffe878f00a85807c
|
@@ -15,12 +7,25 @@ ruby-1.8.6-p369.tar.gz=8c140ae28b4c3947b92dfad69109d90b
|
|
15
7
|
ruby-1.8.6-p383.tar.gz=4f49544d4a4d0d34e9d86c41e853db2e
|
16
8
|
ruby-1.8.7-p160.tar.gz=945398f97e2de6dd8ab6df68d10bb1a1
|
17
9
|
ruby-1.8.7-p174.tar.gz=18dcdfef761a745ac7da45b61776afa5
|
10
|
+
ruby-1.8.7-p248.tar.gz=60a65374689ac8b90be54ca9c61c48e3
|
18
11
|
ruby-1.9.1-p129.tar.gz=c71f413514ee6341c627be2957023a5c
|
19
12
|
ruby-1.9.1-p243.tar.gz=515bfd965814e718c0943abf3dde5494
|
20
13
|
ruby-1.9.1-p376.tar.gz=ebb20550a11e7f1a2fbd6fdec2a3e0a3
|
14
|
+
ruby-1.9.1-p376.tar.gz=ebb20550a11e7f1a2fbd6fdec2a3e0a3
|
15
|
+
ruby-1.9.1-p378.tar.gz=9fc5941bda150ac0a33b299e1e53654c
|
21
16
|
ruby-1.9.2-preview1.tar.gz=e2b8cdbf300f53472be09699a5837fd1
|
22
17
|
ruby-enterprise-1.8.6-20090610.tar.gz=0bf66ee626918464a6eccdd83c99d63a
|
23
18
|
ruby-enterprise-1.8.7-2009.10.tar.gz=3727eef7b6b1b2f31db7d091328d966e
|
24
19
|
ruby-enterprise-1.8.7-20090928.tar.gz=ae00018ce89d95419dfde370fcd485ac
|
25
20
|
rubygems-1.3.5.tgz=6e317335898e73beab15623cdd5f8cff
|
21
|
+
MagLev-22683.Darwin-i386.tar.gz=bf58b17bc2ca62ac0ca9304e8909985c
|
22
|
+
GemStone-22683.Darwin-i386.tar.gz=62ff6be1a99ae708e97d6d43eb044e5a
|
26
23
|
zlib-1.2.3.tar.gz=debc62758716a169df9f62e6ab2bc634
|
24
|
+
curl-7.19.7.tar.gz=ecb2e37e45c9933e2a963cabe03670ab
|
25
|
+
jruby-bin-1.3.1.tar.gz=4a95db8fc93ed7219663fbede98b6117
|
26
|
+
jruby-bin-1.4.0.tar.gz=f37322c18e9134e91e064aebb4baa4c7
|
27
|
+
libiconv-1.13.1.tar.gz=7ab33ebd26687c744a37264a330bbe9a
|
28
|
+
ncurses.tar.gz=cce05daf61a64501ef6cd8da1f727ec6
|
29
|
+
openssl-0.9.8k.tar.gz=e555c6d58d276aec7fdc53363e338ab3
|
30
|
+
readline-5.2.tar.gz=e39331f32ad14009b9ff49cc10c5e751
|
31
|
+
readline-6.0.tar.gz=b7f65a48add447693be6e86f04a63019
|
data/install
CHANGED
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
|
|
28
28
|
esac
|
29
29
|
done
|
30
30
|
|
31
|
-
if [[ -
|
32
|
-
if [[ -
|
31
|
+
if [[ -s /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
|
32
|
+
if [[ -s "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
|
33
33
|
|
34
34
|
if ! [[ "$rvm_path" =~ /rvm/?$ ]] ; then
|
35
35
|
unset rvm_path
|
data/lib/VERSION.yml
CHANGED
data/rvm.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{rvm}
|
8
|
-
s.version = "0.0.
|
8
|
+
s.version = "0.0.9999"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Wayne E. Seguin"]
|
12
|
-
s.date = %q{2010-01-
|
12
|
+
s.date = %q{2010-01-16}
|
13
13
|
s.default_executable = %q{rvm-install}
|
14
14
|
s.description = %q{Manages Ruby interpreter installations and switching between them.}
|
15
15
|
s.email = %q{wayneeseguin@gmail.com}
|
@@ -52,6 +52,7 @@ Gem::Specification.new do |s|
|
|
52
52
|
"scripts/irbrc.rb",
|
53
53
|
"scripts/libraries",
|
54
54
|
"scripts/log",
|
55
|
+
"scripts/maglev",
|
55
56
|
"scripts/manage",
|
56
57
|
"scripts/match",
|
57
58
|
"scripts/md5",
|
data/scripts/cd
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
3
|
# Source a .rvmrc file in a directory after changing to it, if it exists.
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
# To disable this fature, set rvm_project_rvmrc=0 in $HOME/.rvmrc
|
5
|
+
if [[ "$rvm_project_rvmrc" != 0 ]] ; then
|
6
|
+
cd() {
|
7
|
+
builtin cd "$@"
|
7
8
|
local cwd ; cwd=$(pwd)
|
8
9
|
while : ; do
|
9
10
|
if [[ -z "$cwd" ]] || [[ "$HOME" = "$cwd" ]] || [[ "/" = "$cwd" ]] ; then
|
10
|
-
if [[ "$rvm_project_rvmrc_default"
|
11
|
+
if [[ "$rvm_project_rvmrc_default" = 1 ]] ; then
|
11
12
|
rvm default 1>/dev/null 2>&1
|
12
13
|
fi
|
13
14
|
break
|
@@ -20,6 +21,5 @@ cd() {
|
|
20
21
|
fi
|
21
22
|
fi
|
22
23
|
done
|
23
|
-
|
24
|
-
|
25
|
-
|
24
|
+
}
|
25
|
+
fi
|
data/scripts/cli
CHANGED
@@ -40,7 +40,8 @@ __rvm_parse_args() {
|
|
40
40
|
rvm_ruby_string="$rvm_token"
|
41
41
|
;;
|
42
42
|
|
43
|
-
|
43
|
+
# Can likely remove this due to the *) case
|
44
|
+
jruby|ree|macruby|rbx|rubinius|mput|shyouhei|ironruby|default|maglev|all)
|
44
45
|
rvm_ruby_interpreter="$rvm_token"
|
45
46
|
rvm_ruby_string="$rvm_token"
|
46
47
|
rvm_action="${rvm_action:-use}"
|
@@ -116,7 +117,7 @@ __rvm_parse_args() {
|
|
116
117
|
rvm_ruby_version=$(echo "$1" | tr ',' ' ') ; shift
|
117
118
|
unset rvm_ruby_interpreter
|
118
119
|
else
|
119
|
-
if $rvm_scripts_path/match "ruby rbx jruby macruby ree rubinius mput shyouhei ironruby" "$1" ; then
|
120
|
+
if $rvm_scripts_path/match "ruby rbx jruby macruby ree rubinius maglev mput shyouhei ironruby" "$1" ; then
|
120
121
|
rvm_ruby_interpreter=$1 ; shift
|
121
122
|
else
|
122
123
|
unset rvm_ruby_interpreter rvm_ruby_version
|
data/scripts/gems
CHANGED
@@ -130,10 +130,12 @@ __rvm_gems_load() {
|
|
130
130
|
|
131
131
|
while read -r line
|
132
132
|
do # Keep this on 2nd line :(
|
133
|
-
|
134
|
-
|
133
|
+
if [[ ! -z "$(echo $line | sed 's/\s//g')" ]] ; then
|
134
|
+
__rvm_gem_install $line
|
135
|
+
fi
|
136
|
+
done < <(awk '/^[^#]+/{print}' "${rvm_file_name}")
|
135
137
|
else
|
136
|
-
$rvm_scripts_path/log "error" "$rvm_file_name does not exist to load from."
|
138
|
+
$rvm_scripts_path/log "error" "${rvm_file_name} does not exist to load from."
|
137
139
|
fi
|
138
140
|
}
|
139
141
|
|
@@ -173,7 +175,7 @@ __rvm_gem_install() {
|
|
173
175
|
__rvm_parse_gem_line $*
|
174
176
|
|
175
177
|
installed_gems="$(ls ${rvm_ruby_gem_home}/specifications/ 2>/dev/null)"
|
176
|
-
if [[ -z "$rvm_force_flag" ]] && [[ ! -z "$(echo $installed_gems | awk '/'$
|
178
|
+
if [[ -z "$rvm_force_flag" ]] && [[ ! -z "$(echo $installed_gems | awk '/'$(basename $gem_file_name)'spec/')" ]] ; then
|
177
179
|
unset gem
|
178
180
|
$rvm_scripts_path/log "info" "$color_green$gem_name $gem_version$yellow exists, skipping (--force to re-install)"
|
179
181
|
else
|
@@ -256,7 +258,7 @@ if [[ -z "$(which gem 2>/dev/null)" ]] ; then
|
|
256
258
|
return 1
|
257
259
|
fi
|
258
260
|
|
259
|
-
action="$1" ; shift
|
261
|
+
action="$(echo $* | awk '{print $1}')" ; shift
|
260
262
|
gems_args="$*"
|
261
263
|
|
262
264
|
if [[ "load" = "$action" ]] ; then
|
data/scripts/install
CHANGED
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
|
|
28
28
|
esac
|
29
29
|
done
|
30
30
|
|
31
|
-
if [[ -
|
32
|
-
if [[ -
|
31
|
+
if [[ -s /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
|
32
|
+
if [[ -s "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
|
33
33
|
|
34
34
|
if ! [[ "$rvm_path" =~ /rvm/?$ ]] ; then
|
35
35
|
unset rvm_path
|
data/scripts/maglev
ADDED
@@ -0,0 +1,196 @@
|
|
1
|
+
#!/usr/bin/env bash
|
2
|
+
|
3
|
+
if [[ ! -z "$rvm_trace_flag" ]] ; then set -x ; fi
|
4
|
+
|
5
|
+
system="$(uname -s)"
|
6
|
+
if [[ $system = "SunOS" ]] && [[ "$(uname -m)" = "i86pc" ]] ; then OS="Solaris-x86" ; fi
|
7
|
+
version="MagLev-${1}.${system}"
|
8
|
+
gsname="GemStone-${1}.${system}"
|
9
|
+
zipfile=${version}.zip
|
10
|
+
|
11
|
+
# Check we're on a suitable 64-bit machine
|
12
|
+
case "$system" in
|
13
|
+
Linux)
|
14
|
+
if [[ "$(uname -sm)" != "Linux x86_64" ]]; then
|
15
|
+
$rvm_scripts_path/log "error" "This script only works on a 64-bit Linux OS."
|
16
|
+
echo "The result from \"uname -sm\" is \"`uname -sm`\" not \"Linux x86_64\""
|
17
|
+
exit 1
|
18
|
+
fi
|
19
|
+
;;
|
20
|
+
Darwin)
|
21
|
+
system_version="$(sw_vers -productVersion)"
|
22
|
+
MAJOR="$(echo $system_version | cut -f1 -d.)"
|
23
|
+
MINOR="$(echo $system_version | cut -f2 -d.)"
|
24
|
+
CPU_TYPE="$(uname -p)"
|
25
|
+
CPU_CAPABLE="$(sysctl hw.cpu64bit_capable | cut -f2 -d' ')"
|
26
|
+
#
|
27
|
+
# Check the CPU and Mac OS profile.
|
28
|
+
if [[ $CPU_TYPE != "i386" || $CPU_CAPABLE -ne 1 || $MAJOR -lt 10 || $MINOR -lt 5 ]] ; then
|
29
|
+
$rvm_scripts_path/log "error" "This script requires Mac OS 10.5 or later on a 64-bit Intel CPU."
|
30
|
+
exit 1
|
31
|
+
fi
|
32
|
+
;;
|
33
|
+
Solaris-x86)
|
34
|
+
if [[ "$(uname -sm)" != "SunOS i86pc" ]]; then
|
35
|
+
$rvm_scripts_path/log "error" "This script only works on a 64-bit Solaris-x86 OS."
|
36
|
+
echo "The result from \"uname -sm\" is \"`uname -sm`\" not \"SunOS i86pc\""
|
37
|
+
exit 1
|
38
|
+
fi
|
39
|
+
;;
|
40
|
+
*)
|
41
|
+
$rvm_scripts_path/log "error" "This script only works on a 64-bit Linux, Mac OS X, or Solaris-x86 machine"
|
42
|
+
echo "The result from \"uname -sm\" is \"`uname -sm`\""
|
43
|
+
exit 1
|
44
|
+
;;
|
45
|
+
esac
|
46
|
+
|
47
|
+
# We should run this as a normal user, not root.
|
48
|
+
if [[ `id | cut -f2 -d= | cut -f1 -d\(` -eq 0 ]]; then
|
49
|
+
$rvm_scripts_path/log "error" "This script should be run as a normal user, not root."
|
50
|
+
exit 1
|
51
|
+
fi
|
52
|
+
|
53
|
+
# Check that the current directory is writable
|
54
|
+
if [[ ! -w "." ]]; then
|
55
|
+
$rvm_scripts_path/log "error" "This script requires write permission on your current directory."
|
56
|
+
/bin/ls -ld $PWD
|
57
|
+
exit 1
|
58
|
+
fi
|
59
|
+
|
60
|
+
# We're good to go. Let user know.
|
61
|
+
machine_name="`uname -n`"
|
62
|
+
$rvm_scripts_path/log "info" "Starting installation of $version on $machine_name"
|
63
|
+
|
64
|
+
# Do a trivial sudo to test we can and get the password prompt out of the way
|
65
|
+
sudo date
|
66
|
+
|
67
|
+
# Figure out how much total memory is installed
|
68
|
+
$rvm_scripts_path/log "info" "Setting up shared memory"
|
69
|
+
#
|
70
|
+
# Ref: http://wiki.finkproject.org/index.php/Shared_Memory_Regions_on_Darwin
|
71
|
+
# Ref: http://developer.postgresql.org/pgdocs/postgres/kernel-resources.html
|
72
|
+
# Ref: http://www.idevelopment.info/data/Oracle/DBA_tips/Linux/LINUX_8.shtml
|
73
|
+
#
|
74
|
+
case "$system" in
|
75
|
+
Linux)
|
76
|
+
# use TotalMem: kB because Ubuntu doesn't have Mem: in Bytes
|
77
|
+
totalMemKB=`awk '/MemTotal:/{print($2);}' /proc/meminfo`
|
78
|
+
totalMem=$(($totalMemKB * 1024))
|
79
|
+
# Figure out the max shared memory segment size currently allowed
|
80
|
+
shmmax=`cat /proc/sys/kernel/shmmax`
|
81
|
+
# Figure out the max shared memory currently allowed
|
82
|
+
shmall=`cat /proc/sys/kernel/shmall`
|
83
|
+
;;
|
84
|
+
Darwin)
|
85
|
+
totalMem="`sysctl hw.memsize | cut -f2 -d' '`"
|
86
|
+
# Figure out the max shared memory segment size currently allowed
|
87
|
+
shmmax="`sysctl kern.sysv.shmmax | cut -f2 -d' '`"
|
88
|
+
# Figure out the max shared memory currently allowed
|
89
|
+
shmall="`sysctl kern.sysv.shmall | cut -f2 -d' '`"
|
90
|
+
;;
|
91
|
+
Solaris-x86)
|
92
|
+
# TODO: figure memory needs for Solaris-x86
|
93
|
+
# Investigate project.max-shm-memory
|
94
|
+
totalMemMB="`/usr/sbin/prtconf | grep Memory | cut -f3 -d' '`"
|
95
|
+
totalMem=$(($totalMemMB * 1048576))
|
96
|
+
shmmax=$(($totalMem / 4))
|
97
|
+
shmall=$(($shmmax / 4096))
|
98
|
+
;;
|
99
|
+
*)
|
100
|
+
$rvm_scripts_path/log "error" "Can't determine operating system. Check script."
|
101
|
+
exit 1
|
102
|
+
;;
|
103
|
+
esac
|
104
|
+
totalMemMB=$(($totalMem / 1048576))
|
105
|
+
shmmaxMB=$(($shmmax / 1048576))
|
106
|
+
shmallMB=$(($shmall / 256))
|
107
|
+
|
108
|
+
# Print current values
|
109
|
+
echo " Total memory available is $totalMemMB MB"
|
110
|
+
echo " Max shared memory segment size is $shmmaxMB MB"
|
111
|
+
echo " Max shared memory allowed is $shmallMB MB"
|
112
|
+
|
113
|
+
# Figure out the max shared memory segment size (shmmax) we want
|
114
|
+
# Use 75% of available memory but not more than 2GB
|
115
|
+
shmmaxNew=$(($totalMem * 3/4))
|
116
|
+
[[ $shmmaxNew -gt 2147483648 ]] && shmmaxNew=2147483648
|
117
|
+
shmmaxNewMB=$(($shmmaxNew / 1048576))
|
118
|
+
|
119
|
+
# Figure out the max shared memory allowed (shmall) we want
|
120
|
+
# The Darwin (OSX) default is 4MB, way too small
|
121
|
+
# The Linux default is 2097152 or 8GB, so we should never need this
|
122
|
+
# but things will certainly break if it's been reset too small
|
123
|
+
# so ensure it's at least big enough to hold a fullsize shared memory segment
|
124
|
+
shmallNew=$(($shmmaxNew / 4096))
|
125
|
+
[[ $shmallNew -lt $shmall ]] && shmallNew=$shmall
|
126
|
+
shmallNewMB=$(($shmallNew / 256))
|
127
|
+
|
128
|
+
# Increase shmmax if appropriate
|
129
|
+
if [[ $shmmaxNew -gt $shmmax ]]; then
|
130
|
+
$rvm_scripts_path/log "info" "Increasing max shared memory segment size to $shmmaxNewMB MB"
|
131
|
+
[[ $system = "Darwin" ]] && sudo sysctl -w kern.sysv.shmmax=$shmmaxNew
|
132
|
+
[[ $system = "Linux" ]] && sudo bash -c "echo $shmmaxNew > /proc/sys/kernel/shmmax"
|
133
|
+
[[ $system = "Solaris-x86" ]] && echo "[[Warning]] shmmax must be set manually on Solaris-x86"
|
134
|
+
else
|
135
|
+
$rvm_scripts_path/log "info" "No need to increase max shared memory segment size"
|
136
|
+
fi
|
137
|
+
|
138
|
+
# Increase shmall if appropriate
|
139
|
+
if [[ $shmallNew -gt $shmall ]]; then
|
140
|
+
$rvm_scripts_path/log "info" "Increasing max shared memory allowed to $shmallNewMB MB"
|
141
|
+
[[ $system = "Darwin" ]] && sudo sysctl -w kern.sysv.shmall=$shmallNew
|
142
|
+
[[ $system = "Linux" ]] && sudo bash -c "echo $shmallNew > /proc/sys/kernel/shmall"
|
143
|
+
[[ $system = "Solaris-x86" ]] && echo "[[Warning]]shmall must be set manually on Solaris-x86"
|
144
|
+
else
|
145
|
+
$rvm_scripts_path/log "info" "No need to increase max shared memory allowed"
|
146
|
+
fi
|
147
|
+
|
148
|
+
# At this point, shared memory settings contain the values we want,
|
149
|
+
# put them in sysctl.conf so they are preserved.
|
150
|
+
if [[ ! -f /etc/sysctl.conf ]] || [[ "$(grep -sc "kern.*.shm" /etc/sysctl.conf)" -eq 0 ]] ; then
|
151
|
+
case "$system" in
|
152
|
+
Linux)
|
153
|
+
echo "# kernel.shm* settings added by MagLev installation" > /tmp/sysctl.conf.$$
|
154
|
+
echo "kernel.shmmax=$(cat /proc/sys/kernel/shmmax)" >> /tmp/sysctl.conf.$$
|
155
|
+
echo "kernel.shmall=$(cat /proc/sys/kernel/shmall)" >> /tmp/sysctl.conf.$$
|
156
|
+
;;
|
157
|
+
Darwin)
|
158
|
+
# On Mac OS X Leopard, you must have all five settings in sysctl.conf
|
159
|
+
# before they will take effect.
|
160
|
+
echo "# kern.sysv.shm* settings added by MagLev installation" > /tmp/sysctl.conf.$$
|
161
|
+
sysctl kern.sysv.shmmax kern.sysv.shmall kern.sysv.shmmin kern.sysv.shmmni \
|
162
|
+
kern.sysv.shmseg | tr ":" "=" | tr -d " " >> /tmp/sysctl.conf.$$
|
163
|
+
;;
|
164
|
+
Solaris-x86)
|
165
|
+
# Do nothing in Solaris-x86 since /etc/sysctl.conf is ignored on Solaris 10.
|
166
|
+
# Must configure shared memory settings manually.
|
167
|
+
;;
|
168
|
+
*)
|
169
|
+
$rvm_scripts_path/log "error" "Can't determine operating system. Check script."
|
170
|
+
exit 1
|
171
|
+
;;
|
172
|
+
esac
|
173
|
+
# Do nothing on Solaris-x86 since /etc/sysctl.conf is ignored on Solaris 10.
|
174
|
+
if [[ "$system" != "Solaris-x86" ]]; then
|
175
|
+
$rvm_scripts_path/log "info" "Adding the following section to /etc/sysctl.conf"
|
176
|
+
cat /tmp/sysctl.conf.$$
|
177
|
+
sudo bash -c "cat /tmp/sysctl.conf.$$ >> /etc/sysctl.conf"
|
178
|
+
/bin/rm -f /tmp/sysctl.conf.$$
|
179
|
+
fi
|
180
|
+
else
|
181
|
+
$rvm_scripts_path/log "info" "The following shared memory settings already exist in /etc/sysctl.conf"
|
182
|
+
echo "To change them, remove the following lines from /etc/sysctl.conf and rerun this script"
|
183
|
+
grep "kern.*.shm" /etc/sysctl.conf
|
184
|
+
fi
|
185
|
+
|
186
|
+
# Now setup for NetLDI in case we ever need it.
|
187
|
+
$rvm_scripts_path/log "info" "Setting up GemStone netldi service port"
|
188
|
+
if [[ $(grep -sc "^gs64ldi" /etc/services) -eq 0 ]]; then
|
189
|
+
echo '[[Info]] Adding "gs64ldi 50378/tcp" to /etc/services'
|
190
|
+
sudo bash -c 'echo "gs64ldi 50378/tcp # Gemstone netldi" >> /etc/services'
|
191
|
+
else
|
192
|
+
$rvm_scripts_path/log "info" "GemStone netldi service port is already set in /etc/services"
|
193
|
+
echo "To change it, remove the following line from /etc/services and rerun this script"
|
194
|
+
grep "^gs64ldi" /etc/services
|
195
|
+
fi
|
196
|
+
|
data/scripts/manage
CHANGED
@@ -176,7 +176,8 @@ RubyWrapper
|
|
176
176
|
fi
|
177
177
|
|
178
178
|
rm -rf "$rvm_ruby_src_path"
|
179
|
-
__rvm_run "extract" "
|
179
|
+
__rvm_run "extract" "cat $rvm_archives_path/$rvm_ruby_package_file.$rvm_archive_extension | gunzip | tar xf - -C $rvm_src_path" "Extracting $rvm_ruby_package_file ..."
|
180
|
+
|
180
181
|
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
181
182
|
$rvm_scripts_path/log "error" "There has been an error while trying to extract the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
182
183
|
fi
|
@@ -249,10 +250,11 @@ RubyWrapper
|
|
249
250
|
$rvm_scripts_path/log "error" "There has been an error while trying to fetch the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
250
251
|
fi
|
251
252
|
fi
|
252
|
-
__rvm_run "extract" "
|
253
|
-
|
254
|
-
|
255
|
-
|
253
|
+
__rvm_run "extract" "cat $rvm_archives_path/$(basename $rvm_url) | gunzip | tar xf - -C $rvm_src_path" "Extracting $rvm_ruby_package_file ..."
|
254
|
+
|
255
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
256
|
+
$rvm_scripts_path/log "error" "There has been an error while trying to extract the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
257
|
+
fi
|
256
258
|
mv "$rvm_src_path/rubinius-$rvm_ruby_version-${rvm_ruby_patch_level/^p//}" $rvm_ruby_src_path
|
257
259
|
else
|
258
260
|
__rvm_db "rubinius_repo_url" "rvm_ruby_repo_url"
|
@@ -377,6 +379,85 @@ RubyWrapper
|
|
377
379
|
done ; unset rvm_gem_name
|
378
380
|
;;
|
379
381
|
|
382
|
+
maglev)
|
383
|
+
export rvm_install_on_use_flag=1 ; $rvm_bin_path/rvm 1.8.7 --install # This should install if missing.
|
384
|
+
|
385
|
+
$rvm_scripts_path/log "info" "Running MagLev prereqs checking script."
|
386
|
+
$rvm_scripts_path/maglev
|
387
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
388
|
+
$rvm_scripts_path/log "error" "Prerequisite checks have failed. Aborting the installation." ; __rvm_pushpop ; return $result
|
389
|
+
fi
|
390
|
+
|
391
|
+
mkdir -p "$rvm_ruby_log_path"
|
392
|
+
__rvm_pushpop $rvm_src_path
|
393
|
+
|
394
|
+
if [[ ! -d "$rvm_src_path/$rvm_ruby_string" ]] || [[ ! -z "$rvm_force_flag" ]] ; then
|
395
|
+
rm -rf "$rvm_src_path/$rvm_ruby_string/" "$rvm_src_path/$rvm_ruby_string/"
|
396
|
+
__rvm_fetch_ruby
|
397
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
398
|
+
$rvm_scripts_path/log "error" "There has been an error while trying to fetch the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
399
|
+
fi
|
400
|
+
fi
|
401
|
+
|
402
|
+
$rvm_scripts_path/log "info" "Downloading the gemstone package, this may take a while depending on your connection..."
|
403
|
+
$rvm_scripts_path/fetch "$rvm_gemstone_url"
|
404
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
405
|
+
$rvm_scripts_path/log "error" "There has been an error while trying to fetch the gemstone package. Aborting the installation." ; __rvm_pushpop ; return $result
|
406
|
+
fi
|
407
|
+
|
408
|
+
builtin cd "$rvm_src_path"
|
409
|
+
|
410
|
+
mv "$rvm_ruby_package_file" "$rvm_ruby_string"
|
411
|
+
|
412
|
+
builtin cd "$rvm_ruby_src_path"
|
413
|
+
|
414
|
+
__rvm_run "gemstone.extract" "cat $rvm_archives_path/${rvm_gemstone_package_file}.${rvm_archive_extension} | gunzip | tar xf - -C $rvm_ruby_src_path"
|
415
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
416
|
+
$rvm_scripts_path/log "error" "There has been an error while trying to extract the gemstone package. Aborting the installation." ; __rvm_pushpop ; return $result
|
417
|
+
fi
|
418
|
+
|
419
|
+
mv "$rvm_gemstone_package_file" "gemstone"
|
420
|
+
chmod -R 777 gemstone # for now.
|
421
|
+
|
422
|
+
__rvm_pushpop
|
423
|
+
|
424
|
+
if [[ -z "$rvm_ruby_home" ]] || [[ "$rvm_ruby_home" = "/" ]] ; then echo "WTH?!?! rvm_ruby_home == / ??? not removing." ; return 1000000 ; fi
|
425
|
+
rm -rf $rvm_ruby_home
|
426
|
+
__rvm_run "install" "/bin/cp -Rf $rvm_ruby_src_path $rvm_ruby_home" "Installing maglev to $rvm_ruby_home"
|
427
|
+
|
428
|
+
__rvm_pushpop $rvm_ruby_home/bin/
|
429
|
+
for binary in maglev-irb maglev-ruby maglev-gem ; do
|
430
|
+
ln -nfs $binary ${binary#maglev-}
|
431
|
+
done ; unset binary
|
432
|
+
__rvm_pushpop
|
433
|
+
|
434
|
+
for binary in maglev-ruby maglev-irb maglev-gem ; do
|
435
|
+
__rvm_inject_gem_env $rvm_ruby_home/bin/$binary
|
436
|
+
done ; unset binary
|
437
|
+
|
438
|
+
builtin cd "$rvm_ruby_home"
|
439
|
+
|
440
|
+
#ln -fs "$rvm_ruby_home/$(echo $rvm_gemstone_package_file | awk -F'.' '{print $1}')" "$rvm_ruby_home/gemstone"
|
441
|
+
|
442
|
+
if [[ ! -e ${rvm_ruby_home}/etc/conf.d/maglev.conf ]] ; then
|
443
|
+
$rvm_scripts_path/log "info" "Creating default 'maglev' repository." ; __rvm_pushpop ; return $result
|
444
|
+
$rvm_bin_path/rvm 1.8.7 rake "stone:create[maglev]" >/dev/null
|
445
|
+
fi
|
446
|
+
|
447
|
+
$rvm_scripts_path/log "info" "Generating maglev HTML documentation" ; __rvm_pushpop ; return $result
|
448
|
+
$rvm_bin_path/rvm 1.8.7 rake rdoc >/dev/null 2>&1
|
449
|
+
|
450
|
+
$rvm_scripts_path/log "info" "Generating smalltalk FFI." ; __rvm_pushpop ; return $result
|
451
|
+
$rvm_bin_path/rvm 1.8.7 rake stwrappers >/dev/null 2>&1
|
452
|
+
|
453
|
+
|
454
|
+
# TODO: Figure out if anything needs to be done with rubygems.
|
455
|
+
#__rvm_rubygems_setup
|
456
|
+
__rvm_irbrc
|
457
|
+
__rvm_bin_script
|
458
|
+
__rvm_use
|
459
|
+
;;
|
460
|
+
|
380
461
|
ironruby|ir)
|
381
462
|
if ! which mono &> /dev/null ; then
|
382
463
|
echo -e "mono must be installed and in your path in order to install IronRuby." ; return 1
|
@@ -418,7 +499,7 @@ RubyWrapper
|
|
418
499
|
$rvm_scripts_path/log "error" "There has been an error while trying to fetch the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
419
500
|
fi
|
420
501
|
|
421
|
-
__rvm_run "extract" "unzip $rvm_archives_path/$rvm_ruby_package_file ironruby/bin/* ironruby/lib/* -d $rvm_ruby_home" "Extracting $rvm_ruby_package_file ..."
|
502
|
+
__rvm_run "extract" "unzip -q -o $rvm_archives_path/$rvm_ruby_package_file ironruby/bin/* ironruby/lib/* -d $rvm_ruby_home" "Extracting $rvm_ruby_package_file ..."
|
422
503
|
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
423
504
|
$rvm_scripts_path/log "error" "There has been an error while trying to extract the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
424
505
|
fi
|
@@ -545,7 +626,7 @@ __rvm_fetch_ruby() {
|
|
545
626
|
if [[ -z "$rvm_head_flag" ]] && [[ -z "$rvm_ruby_tag" ]] && [[ -z "$rvm_ruby_revision" ]] ; then
|
546
627
|
rvm_ruby_package_name="${rvm_ruby_package_name:-"$rvm_ruby_string"}"
|
547
628
|
rvm_ruby_package_file="${rvm_ruby_package_file:-"$rvm_ruby_package_name"}"
|
548
|
-
rvm_archive_extension="tar.gz"
|
629
|
+
rvm_archive_extension="${rvm_archive_extension:-tar.gz}"
|
549
630
|
if [[ ! -s "$rvm_archives_path/$rvm_ruby_package_file.$rvm_archive_extension" ]] ; then
|
550
631
|
if [[ "ruby" = "$rvm_ruby_interpreter" ]] ; then
|
551
632
|
rvm_url="ftp://ftp.ruby-lang.org/pub/ruby/1.$rvm_major_version/$rvm_ruby_package_file.$rvm_archive_extension"
|
@@ -553,6 +634,8 @@ __rvm_fetch_ruby() {
|
|
553
634
|
rvm_url="$(__rvm_db "${rvm_ruby_interpreter}_${rvm_ruby_version}_url")/$rvm_ruby_package_file.$rvm_archive_extension"
|
554
635
|
elif [[ "jruby" = "$rvm_ruby_interpreter" ]] ; then
|
555
636
|
rvm_url="$(__rvm_db "${rvm_ruby_interpreter}_url")/$rvm_ruby_version/$rvm_ruby_package_file.$rvm_archive_extension"
|
637
|
+
elif [[ "maglev" = "$rvm_ruby_interpreter" ]] ; then
|
638
|
+
: # Should already be set from selector
|
556
639
|
else
|
557
640
|
rvm_url="$(__rvm_db "${rvm_ruby_interpreter}_url")/$rvm_ruby_package_file.$rvm_archive_extension"
|
558
641
|
fi
|
@@ -561,13 +644,24 @@ __rvm_fetch_ruby() {
|
|
561
644
|
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
562
645
|
$rvm_scripts_path/log "error" "There has been an error while trying to fetch the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
563
646
|
fi
|
564
|
-
|
565
|
-
fi
|
566
|
-
__rvm_run "extract" "tar xzf $rvm_archives_path/$rvm_ruby_package_file.$rvm_archive_extension -C $rvm_src_path" "Extracting $rvm_ruby_package_file ..."
|
567
|
-
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
568
|
-
$rvm_scripts_path/log "error" "There has been an error while trying to extract the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
569
647
|
fi
|
570
648
|
|
649
|
+
# Only re-extract if forced.
|
650
|
+
if [[ ! -d "$rvm_src_path/$rvm_ruby_string" ]] || [[ ! -z "$rvm_force_flag" ]] ; then
|
651
|
+
if [[ "tar.gz" = "$rvm_archive_extension" ]] || [[ "tgz" = "$rvm_archive_extension" ]] ; then
|
652
|
+
__rvm_run "extract" "cat $rvm_archives_path/$rvm_ruby_package_file.$rvm_archive_extension | gunzip | tar xf - -C $rvm_src_path" "Extracting $rvm_ruby_package_file ..."
|
653
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
654
|
+
$rvm_scripts_path/log "error" "There has been an error while trying to extract the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
655
|
+
fi
|
656
|
+
elif [[ "zip" = "$rvm_archive_extension" ]] ; then
|
657
|
+
__rvm_run "extract" "unzip -q -o $rvm_archives_path/$rvm_ruby_package_file -d $rvm_src_path"
|
658
|
+
result=$? ; if [[ "$result" -gt 0 ]] ; then
|
659
|
+
$rvm_scripts_path/log "error" "There has been an error while trying to extract $rvm_ruby_package_file. Aborting the installation." ; __rvm_pushpop ; return $result
|
660
|
+
fi
|
661
|
+
fi
|
662
|
+
else
|
663
|
+
$rvm_scripts_path/log "info" "$rvm_ruby_src_path has already been extracted." ; __rvm_pushpop ; return 0
|
664
|
+
fi
|
571
665
|
else
|
572
666
|
if [[ ! -z "$(echo $rvm_url | awk '/^git/')" ]] ; then
|
573
667
|
if [[ -d "$rvm_ruby_src_path/.git" ]] ; then
|
@@ -731,7 +825,7 @@ __rvm_rubygems_setup() {
|
|
731
825
|
$rvm_scripts_path/log "error" "There has been an error while trying to fetch the source. Aborting the installation." ; __rvm_pushpop ; return $result
|
732
826
|
fi
|
733
827
|
mkdir -p "$rvm_src_path/$rvm_gem_package_name"
|
734
|
-
__rvm_run "rubygems.extract" "
|
828
|
+
__rvm_run "rubygems.extract" "cat $rvm_archives_path/$rvm_gem_package_name.tgz | gunzip | tar xf - -C $rvm_src_path" "Extracting $rvm_gem_package_name ..."
|
735
829
|
fi
|
736
830
|
builtin cd "$rvm_src_path/$rvm_gem_package_name"
|
737
831
|
__rvm_run "rubygems.install" "GEM_PATH=$rvm_gem_path GEM_HOME=$rvm_ruby_gem_home $rvm_ruby_home/bin/ruby $rvm_src_path/$rvm_gem_package_name/setup.rb" "Installing rubygems for $rvm_ruby_home/bin/ruby"
|
data/scripts/notes
CHANGED
@@ -1,19 +1,20 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
3
|
system="$(uname)"
|
4
|
-
|
5
4
|
item="$(tput setaf 2)* $(tput sgr0)"
|
6
5
|
|
7
|
-
echo -e "\n$(tput setaf 2)${system} Notes:$(tput sgr0)\n"
|
8
|
-
|
9
|
-
echo -e " $item curl is required.\n"
|
10
|
-
|
11
6
|
if [[ "Linux" = "$system" ]] ; then
|
7
|
+
for file in /etc/*-release ; do
|
8
|
+
release="( $(cat $file) )" ; break
|
9
|
+
done
|
10
|
+
echo -e "\n$(tput setaf 2)Notes for ${system} $release$(tput sgr0)\n"
|
11
|
+
|
12
12
|
rvm_apt_get_binary="$(which aptitude 2> /dev/null)"
|
13
13
|
rvm_emerge_binary="$(which emerge 2> /dev/null)"
|
14
14
|
rvm_pacman_binary="$(which pacman 2> /dev/null)"
|
15
15
|
rvm_yum_binary="$(which yum 2> /dev/null)"
|
16
16
|
|
17
|
+
echo -e "\n $item curl is required.\n"
|
17
18
|
if [[ ! -z "$rvm_apt_get_binary" ]] ; then
|
18
19
|
echo -e " $item For JRuby (if you wish to use it) you will need:"
|
19
20
|
echo -e "\n $ aptitude install curl sun-java6-bin sun-java6-jre sun-java6-jdk"
|
@@ -45,7 +46,9 @@ if [[ "Linux" = "$system" ]] ; then
|
|
45
46
|
echo -e "\n The Mono Runtime and Development Platform (version 2.6 or greater is recommended)."
|
46
47
|
fi
|
47
48
|
elif [[ "Darwin" = "$system" ]] ; then
|
48
|
-
|
49
|
+
release="( $(sw_vers -productName) )"
|
50
|
+
echo -e "\n$(tput setaf 2)Notes for ${system} $release $(tput sgr0)\n"
|
51
|
+
echo -e "\n $item For Snow Leopard be sure to have XCode Tools Version 3.2.1 (1613) or later (there were bugs with the dvd release version)."
|
49
52
|
echo -e "\n $item You should download the latest XCode tools from developer.apple.com. This is necessary since the dvd install for Snow Leopard has bugs."
|
50
53
|
echo -e "\n $item If you intend on installing MacRuby you must install LLVM first."
|
51
54
|
echo -e "\n $item If you intend on installing JRuby you must install the JDK."
|
data/scripts/rvm-install
CHANGED
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
|
|
28
28
|
esac
|
29
29
|
done
|
30
30
|
|
31
|
-
if [[ -
|
32
|
-
if [[ -
|
31
|
+
if [[ -s /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
|
32
|
+
if [[ -s "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
|
33
33
|
|
34
34
|
if ! [[ "$rvm_path" =~ /rvm/?$ ]] ; then
|
35
35
|
unset rvm_path
|
data/scripts/selector
CHANGED
@@ -11,6 +11,8 @@ __rvm_select() {
|
|
11
11
|
|
12
12
|
__rvm_ruby_string
|
13
13
|
|
14
|
+
rvm_archive_extension="tar.gz"
|
15
|
+
|
14
16
|
case "$rvm_ruby_interpreter" in
|
15
17
|
macruby)
|
16
18
|
if [[ "Darwin" = "$(uname)" ]] ; then
|
@@ -75,6 +77,37 @@ __rvm_select() {
|
|
75
77
|
alias jruby_ng_server="jruby --ng-server"
|
76
78
|
;;
|
77
79
|
|
80
|
+
maglev)
|
81
|
+
unset rvm_ruby_patch_level
|
82
|
+
if [[ ! -z "$rvm_head_flag" ]] ; then
|
83
|
+
rvm_ruby_version="head"
|
84
|
+
rvm_ruby_string="maglev-head"
|
85
|
+
rvm_ruby_repo_url="${rvm_ruby_repo_url:-$(__rvm_db "maglev_repo_url")}"
|
86
|
+
rvm_url="${rvm_ruby_repo_url:-$(__rvm_db "maglev_repo_url")}"
|
87
|
+
else
|
88
|
+
system="$(uname -s)"
|
89
|
+
arch="$(uname -m)"
|
90
|
+
# It would be nice if we didn't have to do this if..else..
|
91
|
+
#if [[ "Darwin" = "$system" ]] ; then
|
92
|
+
# rvm_ruby_package_file="MagLev-${rvm_ruby_version}.MacOSX"
|
93
|
+
# rvm_gemstone_package_file="GemStone-${rvm_ruby_version}.MacOSX"
|
94
|
+
#elif [[ "SunOS" = "$system" ]] && [[ "i86pc" = "$(uname -m)" ]] ; then
|
95
|
+
# rvm_ruby_package_file="MagLev-${rvm_ruby_version}.Solaris-x86"
|
96
|
+
# rvm_gemstone_package_file="GemStone-${rvm_ruby_version}.Solaris-x86"
|
97
|
+
#else
|
98
|
+
rvm_ruby_package_file="MagLev-${rvm_ruby_version}.${system}-${arch}"
|
99
|
+
rvm_gemstone_package_file="GemStone-${rvm_ruby_version}.${system}-${arch}"
|
100
|
+
#fi
|
101
|
+
rvm_ruby_version="${rvm_ruby_version:-"$(__rvm_db "maglev_version")"}"
|
102
|
+
rvm_ruby_package_name="${rvm_ruby_interpreter}-${rvm_ruby_version}"
|
103
|
+
rvm_ruby_string="${rvm_ruby_interpreter}-${rvm_ruby_version}"
|
104
|
+
maglev_url="$(__rvm_db "maglev_url")"
|
105
|
+
rvm_url="${rvm_ruby_url:-"$maglev_url/${rvm_ruby_package_file}.${rvm_archive_extension}"}"
|
106
|
+
rvm_gemstone_url="${rvm_gemstone_url:-"$maglev_url/${rvm_gemstone_package_file}.${rvm_archive_extension}"}"
|
107
|
+
export MAGLEV_HOME="$rvm_path/$rvm_ruby_string"
|
108
|
+
fi
|
109
|
+
;;
|
110
|
+
|
78
111
|
ironruby)
|
79
112
|
unset rvm_ruby_patch_level
|
80
113
|
if [[ "$rvm_head_flag" -eq 1 ]] ; then
|
@@ -172,6 +205,11 @@ __rvm_select() {
|
|
172
205
|
rvm_ruby_irbrc="$rvm_ruby_home/.irbrc"
|
173
206
|
rvm_ruby_gem_home="${rvm_gem_path}/${rvm_ruby_string}"
|
174
207
|
|
208
|
+
if [[ "maglev" = "$rvm_ruby_interpreter" ]] ; then
|
209
|
+
export MAGLEV_HOME="$rvm_ruby_home"
|
210
|
+
export GEMSTONE_GLOBAL_DIR=$MAGLEV_HOME
|
211
|
+
fi
|
212
|
+
|
175
213
|
if [[ ! -z "$rvm_gem_set_name" ]] ; then
|
176
214
|
rvm_ruby_gem_home="${rvm_ruby_gem_home}%${rvm_gem_set_name}"
|
177
215
|
fi
|
@@ -280,7 +318,7 @@ __rvm_use() {
|
|
280
318
|
|
281
319
|
echo "export PATH=\"$rvm_ruby_home/bin:$rvm_ruby_gem_home/bin:$rvm_path/bin:\$PATH\"" > $rvm_path/default
|
282
320
|
|
283
|
-
for variable in RUBY_VERSION GEM_HOME GEM_PATH MY_RUBY_HOME IRBRC rvm_ruby_string rvm_gem_set_name ; do
|
321
|
+
for variable in RUBY_VERSION GEM_HOME GEM_PATH MY_RUBY_HOME IRBRC rvm_ruby_string rvm_gem_set_name MAGLEV_HOME ; do
|
284
322
|
eval "export $variable"
|
285
323
|
eval value=\$${variable}
|
286
324
|
if [[ ! -z "$value" ]] ; then
|
@@ -295,16 +333,21 @@ __rvm_use() {
|
|
295
333
|
fi
|
296
334
|
unset rvm_default_flag
|
297
335
|
|
298
|
-
if [[ ! -z "$rvm_symlink_name" ]]
|
299
|
-
if [[ ! -z "$rvm_editor_flag" ]]
|
300
|
-
if [[ ! -z "$rvm_passenger_flag" ]] ; then $rvm_scripts_path/symlink "passenger"
|
301
|
-
|
336
|
+
if [[ ! -z "$rvm_symlink_name" ]] ; then $rvm_scripts_path/symlink "$rvm_symlink_name" ; unset rvm_symlink_name ; fi
|
337
|
+
if [[ ! -z "$rvm_editor_flag" ]] ; then $rvm_scripts_path/symlink "editor" ; unset rvm_editor_flag ; fi
|
338
|
+
if [[ ! -z "$rvm_passenger_flag" ]] ; then $rvm_scripts_path/symlink "passenger" ; unset rvm_passenger_flag ; fi
|
302
339
|
# Export ruby string and gem set name for extrnal scripts to take advantage of them.
|
303
|
-
if [[ ! -z "$rvm_ruby_string" ]]
|
304
|
-
if [[ ! -z "$rvm_gem_set_name" ]]
|
305
|
-
|
306
|
-
|
307
|
-
|
340
|
+
if [[ ! -z "$rvm_ruby_string" ]] ; then export rvm_ruby_string ; fi
|
341
|
+
if [[ ! -z "$rvm_gem_set_name" ]] ; then export rvm_gem_set_name ; fi
|
342
|
+
if [[ ! -z "$new_path" ]] ; then export PATH="$new_path" ; unset new_path ; fi
|
343
|
+
|
344
|
+
if [[ "maglev" = "$rvm_ruby_interpreter" ]] ; then
|
345
|
+
export MAGLEV_HOME="$rvm_ruby_home"
|
346
|
+
export GEMSTONE_GLOBAL_DIR=$MAGLEV_HOME
|
347
|
+
if [[ -x "$MAGLEV_HOME/gemstone/bin/gslist" ]] ; then
|
348
|
+
$MAGLEV_HOME/gemstone/bin/gslist -clv > /dev/null 2>&1 ; result=$?
|
349
|
+
if [[ $result -eq 1 ]] ; then $rvm_ruby_home/bin/maglev start ; fi
|
350
|
+
fi
|
308
351
|
fi
|
309
352
|
|
310
353
|
$rvm_scripts_path/hook "after_use"
|
@@ -358,6 +401,9 @@ __rvm_ruby_string() {
|
|
358
401
|
if [[ "ree" = "$rvm_ruby_interpreter" ]] ; then
|
359
402
|
rvm_ruby_patch_level="$string"
|
360
403
|
unset rvm_ruby_revision
|
404
|
+
elif [[ "maglev" = "$rvm_ruby_interpreter" ]] ; then
|
405
|
+
rvm_ruby_version="$string"
|
406
|
+
unset rvm_ruby_revision rvm_ruby_patch_level
|
361
407
|
else
|
362
408
|
rvm_ruby_revision="r$string"
|
363
409
|
fi
|
@@ -378,7 +424,7 @@ __rvm_ruby_string() {
|
|
378
424
|
elif $rvm_scripts_path/match "$string" "^u[a-z0-9]" ; then
|
379
425
|
unset rvm_ruby_patch_level rvm_ruby_revision rvm_ruby_tag rvm_ruby_patch
|
380
426
|
rvm_ruby_user_tag="$string"
|
381
|
-
elif $rvm_scripts_path/match "ruby rbx jruby macruby ree rubinius mput shyouhei ironruby" "$string" ; then
|
427
|
+
elif $rvm_scripts_path/match "ruby rbx jruby macruby ree rubinius maglev mput shyouhei ironruby" "$string" ; then
|
382
428
|
rvm_ruby_interpreter="$string"
|
383
429
|
else
|
384
430
|
$rvm_scripts_path/log "error" "Unknown ruby string component: '$string'"
|
@@ -408,6 +454,7 @@ __rvm_ruby_string() {
|
|
408
454
|
rvm_ruby_string="${rvm_ruby_interpreter}-${rvm_ruby_version}"
|
409
455
|
fi
|
410
456
|
|
457
|
+
# Head
|
411
458
|
if [[ "$rvm_head_flag" -eq 1 ]] ; then
|
412
459
|
rvm_ruby_string="${rvm_ruby_string}-head"
|
413
460
|
elif [[ ! -z "$rvm_ruby_revision" ]] ; then
|
data/scripts/update
CHANGED
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
|
|
28
28
|
esac
|
29
29
|
done
|
30
30
|
|
31
|
-
if [[ -
|
32
|
-
if [[ -
|
31
|
+
if [[ -s /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
|
32
|
+
if [[ -s "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
|
33
33
|
|
34
34
|
if ! [[ "$rvm_path" =~ /rvm/?$ ]] ; then
|
35
35
|
unset rvm_path
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rvm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9999
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wayne E. Seguin
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-01-
|
12
|
+
date: 2010-01-16 00:00:00 -05:00
|
13
13
|
default_executable: rvm-install
|
14
14
|
dependencies: []
|
15
15
|
|
@@ -56,6 +56,7 @@ files:
|
|
56
56
|
- scripts/irbrc.rb
|
57
57
|
- scripts/libraries
|
58
58
|
- scripts/log
|
59
|
+
- scripts/maglev
|
59
60
|
- scripts/manage
|
60
61
|
- scripts/match
|
61
62
|
- scripts/md5
|