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 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
- rbx_version=1.0.0
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 [[ -f /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
32
- if [[ -f "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
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
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  :major: 0
3
3
  :minor: 0
4
- :patch: 999
4
+ :patch: 9999
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rvm}
8
- s.version = "0.0.999"
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-07}
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
- cd() {
5
- builtin cd "$@"
6
- if [[ "$rvm_project_rvmrc" != 0 ]] ; then
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" != 0 ]] ; then
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
- fi
24
- }
25
-
24
+ }
25
+ fi
@@ -40,7 +40,8 @@ __rvm_parse_args() {
40
40
  rvm_ruby_string="$rvm_token"
41
41
  ;;
42
42
 
43
- jruby|ree|macruby|rbx|rubinius|mput|shyouhei|ironruby|default|all)
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
@@ -130,10 +130,12 @@ __rvm_gems_load() {
130
130
 
131
131
  while read -r line
132
132
  do # Keep this on 2nd line :(
133
- __rvm_gem_install $line
134
- done < <(awk '/^[\.\/a-zA-Z]/{print}' "$rvm_file_name")
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 '/'${gem_file_name}spec'/')" ]] ; then
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
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
28
28
  esac
29
29
  done
30
30
 
31
- if [[ -f /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
32
- if [[ -f "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
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
@@ -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
+
@@ -176,7 +176,8 @@ RubyWrapper
176
176
  fi
177
177
 
178
178
  rm -rf "$rvm_ruby_src_path"
179
- __rvm_run "extract" "tar xzf $rvm_archives_path/$rvm_ruby_package_file.tar.gz -C $rvm_src_path" "Extracting $rvm_ruby_package_file..."
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" "tar xzf $rvm_archives_path/$(basename $rvm_url) -C $rvm_src_path" "Extracting $(basename $rvm_url) ..."
253
- result=$? ; if [[ "$result" -gt 0 ]] ; then
254
- $rvm_scripts_path/log "error" "There has been an error while trying to extract the source. Aborting the installation." ; __rvm_pushpop ; return $result
255
- fi
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" "tar zxf $rvm_archives_path/$rvm_gem_package_name.tgz -C $rvm_src_path" "Extracting $rvm_gem_package_name"
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"
@@ -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
- echo -e " $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
+ 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."
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
28
28
  esac
29
29
  done
30
30
 
31
- if [[ -f /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
32
- if [[ -f "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
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
@@ -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" ]] ; then $rvm_scripts_path/symlink "$rvm_symlink_name" ; unset rvm_symlink_name ; fi
299
- if [[ ! -z "$rvm_editor_flag" ]] ; then $rvm_scripts_path/symlink "editor" ; unset rvm_editor_flag ; fi
300
- if [[ ! -z "$rvm_passenger_flag" ]] ; then $rvm_scripts_path/symlink "passenger" ; unset rvm_passenger_flag; fi
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" ]] ; then export rvm_ruby_string ; fi
304
- if [[ ! -z "$rvm_gem_set_name" ]] ; then export rvm_gem_set_name ; fi
305
-
306
- if [[ ! -z "$new_path" ]] ; then
307
- export PATH="$new_path" ; unset new_path
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
@@ -28,8 +28,8 @@ while [[ $# -gt 0 ]] ; do
28
28
  esac
29
29
  done
30
30
 
31
- if [[ -f /etc/rvmrc ]] ; then source /etc/rvmrc ; fi
32
- if [[ -f "$HOME/.rvmrc" ]] ; then source "$HOME/.rvmrc" ; fi
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.999
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-07 00:00:00 -05:00
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