rvm 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/bash/rvm +50 -29
  2. metadata +1 -1
data/bash/rvm CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/bin/bash
2
2
 
3
3
  rvm_author="Wayne E. Seguin"
4
- rvm_version="0.0.3"
4
+ rvm_version="0.0.4"
5
5
  rvm_updated="2009.08.23"
6
6
 
7
7
  #
@@ -26,7 +26,8 @@ function usage {
26
26
  info - Show information for current ruby
27
27
  gemdir - Switch to gem directory for installation (new login shell)
28
28
  srcdir - Switch to src directory for the current ruby installation
29
- gemdup - Clone source implementation version gems to currently used version
29
+ gemdup - Clone source implementation version gems to currently used version
30
+ (expiramental)
30
31
  install - Install a ruby version, default is from source
31
32
  debug - Emit environment and configuration information for debugging
32
33
 
@@ -63,8 +64,9 @@ function usage {
63
64
  $ gem install rvm # Install the rvm gem
64
65
  $ rvm-install # Install rvm, adds source hooks to ~/.bash_profile
65
66
  $ rvm install jruby # Install jRuby, default 1.3.1
66
- $ rvm use ruby -v 1.9.1 # Use Ruby 1.9, install first if not installed
67
- $ rvm use -v 1.9 # Equivalent to above, because of defaults
67
+ $ rvm use ruby -v 1.9.1 # Use Ruby 1.9.1, install first if not installed
68
+ $ rvm use 1.9 # Equivalent to above, due to dof efaults
69
+ $ rvm use 1.8 # Use Ruby 1.8.6, install first if not installed
68
70
  $ rvm use default # Use the system default (as if no rvm)
69
71
 
70
72
  TODO: (in order)
@@ -116,13 +118,14 @@ Info
116
118
  function ruby-install-source {
117
119
 
118
120
  case "${version-$1}" in
119
- 1.9|1.9.1) major="1.9" ; minor="1" ; patchlevel="${2-243}" ;;
120
- 1.8|1.8.6) major="1.8" ; minor="6" ; patchlevel="${2-369}" ;;
121
- 1.8.7) major="1.8" ; minor="7" ; patchlevel="${2-174}" ;;
121
+ 1.9|1.9.1) major="1.9" ; minor="1" ; level="${2-243}" ;;
122
+ 1.9.2) major="1.9" ; minor="2" ; level="review1" ;;
123
+ 1.8|1.8.6) major="1.8" ; minor="6" ; level="${2-369}" ;;
124
+ 1.8.7) major="1.8" ; minor="7" ; level="${2-174}" ;;
122
125
  *) fail "Ruby version '$version' is unknown."
123
126
  esac
124
127
 
125
- package_name="ruby-$major.$minor-p$patchlevel"
128
+ package_name="ruby-$major.$minor-p$level"
126
129
  url="ftp://ftp.ruby-lang.org/pub/ruby/$major/$package_name.tar.gz"
127
130
 
128
131
  pushd $source_path
@@ -134,6 +137,19 @@ function ruby-install-source {
134
137
  fi
135
138
  ./configure --prefix=$install_path/$package_name ${configure-'--enable-shared'} && make && make install
136
139
  chmod +x $install_path/$package_name/bin/*
140
+
141
+ # Now install rubygems for this ruby version.
142
+ gem_package_name="rubygems-1.3.5"
143
+ gem_url="http://rubyforge.org/frs/download.php/60718/$gem_package_name.tgz"
144
+ if [ -d $gem_package_name ] ; then
145
+ cd $gem_package_name
146
+ else
147
+ if [ ! -f $gem_package_name.tgz ] ; then $curl $gem_url ; fi
148
+ tar zxf $gem_package_name.tgz && cd $gem_package_name
149
+ fi
150
+ # Well this is fun... fix nil error on require_paths:
151
+ sed -i '' "s/require_paths\.join/require_paths.to_a.join/" $source_path/$package_name/$gem_package_name/lib/rubygems/gem_path_searcher.rb
152
+ $install_path/$package_name/bin/ruby ./setup.rb
137
153
  popd
138
154
 
139
155
  }
@@ -232,17 +248,21 @@ function ruby-use {
232
248
 
233
249
  ruby)
234
250
  if [ "$version" = "1.8.6" ] ; then
235
- patchlevel="${patchlevel-369}"
236
- MY_RUBY_HOME="$install_path/ruby-1.8.6-p$patchlevel"
251
+ level="${patchlevel-369}"
252
+ MY_RUBY_HOME="$install_path/ruby-1.8.6-p$level"
237
253
  GEM_HOME="$HOME/.gem/ruby/1.8"
238
254
  elif [ "$version" = "1.8.7" ] ; then
239
- patchlevel="${patchlevel-174}"
240
- MY_RUBY_HOME="$install_path/ruby-1.8.7-p$patchlevel"
255
+ level="${patchlevel-174}"
256
+ MY_RUBY_HOME="$install_path/ruby-1.8.7-p$level"
241
257
  GEM_HOME="$HOME/.gem/ruby/1.8"
242
258
  elif [ "$version" = "1.9.1" -o "$version" = "1.9" ] ; then
243
- patchlevel="${patchlevel-243}"
244
- MY_RUBY_HOME="$install_path/ruby-1.9.1-p$patchlevel"
245
- GEM_HOME="$HOME/.gem/ruby/1.9.1"
259
+ level="${patchlevel-243}"
260
+ MY_RUBY_HOME="$install_path/ruby-1.9.1-p$level"
261
+ GEM_HOME="$HOME/.gem/ruby/1.9"
262
+ elif [ "$version" = "1.9.2" ] ; then
263
+ level="${patchlevel-review1}"
264
+ MY_RUBY_HOME="$install_path/ruby-1.9.2-p$level"
265
+ GEM_HOME="$HOME/.gem/ruby/1.9"
246
266
  else
247
267
  fail "Unknown ruby version: $version"
248
268
  fi
@@ -259,7 +279,7 @@ function ruby-use {
259
279
 
260
280
  if [ ! -d $MY_RUBY_HOME ] ; then
261
281
  warn "$implementation $version is not installed, installing."
262
- ruby-install $implementation $version $patchlevel
282
+ ruby-install $implementation $version $level
263
283
  fi
264
284
 
265
285
  # Setup ~/.rvm/current
@@ -284,12 +304,10 @@ function ruby-gem-dir {
284
304
  jruby) GEM_HOME="$HOME/.gem/jruby/1.8" ;;
285
305
  ree) GEM_HOME="$HOME/.gem/ruby-enterprise/1.8" ;;
286
306
  ruby)
287
- if [ "$version" = "1.8.6" -o "$version" = "1.8" ] ; then
307
+ if [ "${version%\.*}" = "1.8" ] ; then
288
308
  GEM_HOME="$HOME/.gem/ruby/1.8"
289
- elif [ "$version" = "1.8.7" ] ; then
290
- GEM_HOME="$HOME/.gem/ruby/1.8"
291
- elif [ "$version" = "1.9.1" -o "$version" = "1.9" ] ; then
292
- GEM_HOME="$HOME/.gem/ruby/1.9.1"
309
+ elif [ "${version%\.*}" = "1.9" ] ; then
310
+ GEM_HOME="$HOME/.gem/ruby/1.9"
293
311
  else
294
312
  fail "Unknown ruby version: $version"
295
313
  fi
@@ -330,14 +348,17 @@ function ruby-src-dir {
330
348
 
331
349
  ruby)
332
350
  if [ "$version" = "1.8.6" -o "$version" = "1.8" ] ; then
333
- patchlevel="${patchlevel-369}"
334
- src_dir="$source_path/ruby-1.8.6-p$patchlevel"
351
+ level="${patchlevel-369}"
352
+ src_dir="$source_path/ruby-1.8.6-p$level"
335
353
  elif [ "$version" = "1.8.7" ] ; then
336
- patchlevel="${patchlevel-174}"
337
- src_dir="$source_path/ruby-1.8.7-p$patchlevel"
354
+ level="${patchlevel-174}"
355
+ src_dir="$source_path/ruby-1.8.7-p$level"
338
356
  elif [ "$version" = "1.9.1" -o "$version" = "1.9" ] ; then
339
- patchlevel="${patchlevel-243}"
340
- src_dir="$source_path/ruby-1.9.1-p$patchlevel"
357
+ level="${patchlevel-243}"
358
+ src_dir="$source_path/ruby-1.9.1-p$level"
359
+ elif [ "$version" = "1.9.2" ] ; then
360
+ level="${patchlevel-review1}"
361
+ src_dir="$source_path/ruby-1.9.2-p$level"
341
362
  else
342
363
  fail "Unknown ruby version: $version"
343
364
  fi
@@ -391,7 +412,7 @@ function rvm {
391
412
  action=$token ;;
392
413
  ruby|jruby|ree|default|all)
393
414
  implementation="$token" ;;
394
- 1.8|1.9|1.8.6|1.8.7|1.9.1|1.2.0|1.3.1)
415
+ 1.8|1.9|1.8.6|1.8.7|1.9.1|1.9.2|1.2.0|1.3.1)
395
416
  version="$token" ;;
396
417
  -v|--version) version="$1" ; shift ;;
397
418
  -l|--level) patchlevel="$1" ; shift ;;
@@ -430,7 +451,7 @@ function rvm {
430
451
  if [ "$implementation" = "all" ] ; then
431
452
  for implementation in ruby jruby ree ; do
432
453
  if [ "$implementation" = "ruby" ] ; then
433
- for version in 1.8.6 1.8.7 1.9.1 ; do
454
+ for version in 1.8.6 1.8.7 1.9.1 1.9.2 ; do
434
455
  ruby-install $implementation $version $patchlevel
435
456
  done
436
457
  else
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.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wayne E. Seguin