rvm 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/bash/rvm +113 -47
  2. metadata +1 -1
data/bash/rvm CHANGED
@@ -3,7 +3,7 @@
3
3
  rvm_author="Wayne E. Seguin"
4
4
  rvm_author_email="wayneeseguin@gmail.com"
5
5
  rvm_website="http://github.com/wayneeseguin/rvm"
6
- rvm_version="0.0.5"
6
+ rvm_version="0.0.6"
7
7
  rvm_updated="2009.08.23"
8
8
 
9
9
  #
@@ -100,12 +100,12 @@ Usage
100
100
  }
101
101
 
102
102
  # Logging functions based on level
103
- function log { echo -e "\n $* \e[0m\n" ; }
104
- function debug { log "\e[4;34m <d> $*" ; }
105
- function info { log "\e[0;32m <i> $*" ; }
106
- function warn { log "\e[0;33m <w> $*" ; }
107
- function error { log "\e[0;31m <e> $*" ; }
108
- function fail { log "\e[0;31m <e> $*" ; return 1 ; }
103
+ function log { echo -e "\n $* \e[0m" ; }
104
+ function debug { log "\e[4;34m <d> \e[0m$*" ; }
105
+ function info { log "\e[0;32m <i> \e[0m$*" ; }
106
+ function warn { log "\e[0;33m <w> \e[0m$*" ; }
107
+ function error { log "\e[0;31m <e> \e[0m$*" ; }
108
+ function fail { log "\e[0;31m <e> \e[0m$*" ; return 1 ; }
109
109
 
110
110
  function rvm-gi { gem install -q --no-rdoc --no-ri $* ; }
111
111
 
@@ -146,17 +146,33 @@ function rvm-install-source {
146
146
  package_name="ruby-$major.$minor-p$level"
147
147
  url="ftp://ftp.ruby-lang.org/pub/ruby/$major/$package_name.tar.gz"
148
148
 
149
- pushd $source_path
149
+ info "Installing Ruby from source to: $install_path/$package_name"
150
+ mkdir -p $install_path/$package_name
151
+
152
+ pushd $source_path > /dev/null
150
153
  if [ -d $package_name ] ; then
151
154
  cd $package_name
152
155
  else
153
- if [ ! -f "$package_name.tar.gz" ] ; then curl -O -L -s $url ; fi
154
- tar xzf $package_name.tar.gz && cd $package_name/
156
+ if [ ! -f "$package_name.tar.gz" ] ; then
157
+ info "\tDownloading $package_name, this may take a while depending on your connection..."
158
+ curl -O -L -s $url
159
+ fi
160
+ info "\tExtracting $package_name..."
161
+ tar xzf $package_name.tar.gz && cd $package_dir/
155
162
  fi
156
- ./configure --prefix=$install_path/$package_name ${configure-'--enable-shared'} && make && make install
163
+
164
+ info "\tConfiguring $package_name using ${configure-'--enable-shared'}, this may take a while depending on your cpu(s)..."
165
+ ./configure --prefix=$install_path/$package_name ${configure-'--enable-shared'} > $install_path/$package_name/configure.log 2> $install_path/$package_name/configure.error.log
166
+
167
+ info "\tCompiling $package_name, this may take a while, depending on your cpu(s)..."
168
+ make > $install_path/$package_name/make.log 2> $install_path/$package_name/make.error.log
169
+
170
+ info "\tInstalling $package_name"
171
+ make install > $install_path/$package_name/install.log 2> $install_path/$package_name/install.error.log
157
172
  chmod +x $install_path/$package_name/bin/*
158
173
 
159
174
  # Now install rubygems for this ruby version.
175
+ info "\tInstalling rubygems dedicated to $package_name..."
160
176
  gem_package_name="rubygems-1.3.5"
161
177
  gem_url="http://rubyforge.org/frs/download.php/60718/$gem_package_name.tgz"
162
178
  if [ -d $gem_package_name ] ; then
@@ -167,8 +183,14 @@ function rvm-install-source {
167
183
  fi
168
184
  # Well this is fun... fix nil error on require_paths:
169
185
  sed -i '' "s/require_paths\.join/require_paths.to_a.join/" $source_path/$package_name/$gem_package_name/lib/rubygems/gem_path_searcher.rb
170
- $install_path/$package_name/bin/ruby ./setup.rb
171
- popd
186
+ $install_path/$package_name/bin/ruby ./setup.rb > $install_path/$package_name/rubygems.install.log 2> $install_path/$package_name/rubygems.install.error.log
187
+ popd > /dev/null
188
+ info "Installation of $package_name complete."
189
+
190
+ for gem_name in rake ; do
191
+ info "Installing $gem_name"
192
+ $install_path/$package_name/bin/gem install $gem_name --no-rdoc --no-ri -q >> $install_path/$package_name/gems.install.log
193
+ done
172
194
 
173
195
  }
174
196
 
@@ -181,40 +203,79 @@ function rvm-install-ruby {
181
203
  patchlevel=${patchlevel-20090610}
182
204
  package_name="ruby-enterprise-$version-$patchlevel"
183
205
  url="http://rubyforge.org/frs/download.php/58677/$package_name.tar.gz"
184
- pushd $source_path
206
+ info "Installing Ruby Enterprise Edition from source to: $install_path/$package_name"
207
+ pushd $source_path > /dev/null
185
208
  if [ -d $package_name ] ; then
186
209
  cd $package_name
187
210
  else
188
- if [ ! -f "$package_name.tar.gz" ] ; then curl -O -L -s $url ; fi
189
- tar xzf $package_name.tar.gz && cd $package_name/
211
+ if [ ! -f "$package_name.tar.gz" ] ; then
212
+ info "\tDownloading $package_name, this may take a while depending on your connection..."
213
+ curl -O -L -s $url
214
+ fi
215
+ info "\tExtracting $package_name..."
216
+ tar xzf $package_name.tar.gz && cd $package_name
190
217
  fi
191
- cd ruby-enterprise-$version-$patchlevel && ./installer -a $install_path/ruby-enterprise-$version-$patchlevel --dont-install-useful-gems
192
- popd
218
+
219
+ info "\tInstalling $package_name, this may take a while, depending on your cpu(s)..."
220
+ mkdir -p $install_path/$package_name
221
+ ./installer -a $install_path/ruby-enterprise-$version-$patchlevel --dont-install-useful-gems > $install_path/$package_name/install.log 2> $install_path/$package_name/install.error.log
193
222
  chmod +x $install_path/$package_name/bin/*
223
+
224
+ info "\tInstalling rubygems dedicated to $package_name..."
225
+ gem_package_name="rubygems-1.3.5"
226
+ gem_url="http://rubyforge.org/frs/download.php/60718/$gem_package_name.tgz"
227
+ if [ -d $gem_package_name ] ; then
228
+ cd $gem_package_name
229
+ else
230
+ if [ ! -f $gem_package_name.tgz ] ; then curl -O -L -s $gem_url ; fi
231
+ tar zxf $gem_package_name.tgz && cd $gem_package_name
232
+ fi
233
+ # Well this is fun... fix nil error on require_paths:
234
+ sed -i '' "s/require_paths\.join/require_paths.to_a.join/" $source_path/$package_name/$gem_package_name/lib/rubygems/gem_path_searcher.rb
235
+ $install_path/$package_name/bin/ruby ./setup.rb > $install_path/$package_name/rubygems.install.log 2> $install_path/$package_name/rubygems.install.error.log
236
+ info "Installation of $package_name complete."
237
+ popd > /dev/null
238
+
239
+ for gem_name in rake ; do
240
+ info "Installing $gem_name"
241
+ $install_path/$package_name/bin/gem install $gem_name --no-rdoc --no-ri -q >> $install_path/$package_name/gems.install.log
242
+ done
194
243
  ;;
195
244
 
196
245
  jruby)
197
246
  version=${version-1.3.1} # 1.2.0, 1.3.1
198
247
  unset patchlevel # No patchlevel for jRuby
199
- package_name="$implementation-bin-$version"
200
- package_dir="$implementation-$version"
201
- url="http://dist.codehaus.org/$implementation/$version/$package_name.zip"
202
- pushd $source_path
203
- if [ -d $package_name ] ; then
204
- cd $package_name
248
+ zipfile="$implementation-bin-$version"
249
+ package_name="$implementation-$version"
250
+ url="http://dist.codehaus.org/$implementation/$version/$zipfile.zip"
251
+
252
+ info "Installing jRuby to: $install_path/$package_name"
253
+ mkdir -p $install_path/$package_name
254
+ pushd $source_path > /dev/null
255
+ if [ -d $zipfile ] ; then
256
+ cd $zipfile
205
257
  else
206
- if [ ! -f "$package_name.zip" ] ; then curl -O -L -s $url ; fi
207
- jar xf $package_name.zip && cd $package_name/
258
+ if [ ! -f "$zipfile.zip" ] ; then
259
+ info "\tDownloading $zipfile, this may take a while depending on your connection..."
260
+ curl -O -L -s $url
261
+ fi
262
+ info "\tExtracting $zipfile..."
263
+ jar xf $zipfile.zip
208
264
  fi
209
- mkdir -p $install_path/$package_dir/bin/
265
+
266
+ info "\tInstalling $package_name..."
267
+ mkdir -p $install_path/$package_name/bin/
268
+ rsync -ag $source_path/$package_name/ $install_path/$package_name/
269
+ cd $source_path/$package_name/tool/nailgun && make > $install_path/$package_name/install.nailgun.log 2> $install_path/$package_name/install.error.nailgun.log
270
+ popd > /dev/null
271
+ chmod +x $install_path/$package_name/bin/*
210
272
  for binary in jruby jgem jirb ; do
211
- ln -sf $source_path/$package_dir/bin/$binary $source_path/$package_dir/bin/${binary#j}
273
+ ln -sf $install_path/$package_name/bin/$binary $install_path/$package_name/bin/${binary#j}
274
+ done
275
+ for gem_name in rake jruby-openssl ; do
276
+ info "Installing $gem_name"
277
+ $install_path/$package_name/bin/jgem install $gem_name --no-rdoc --no-ri -q >> $install_path/$package_name/gems.install.log
212
278
  done
213
- rsync -ag $source_path/$package_dir/ $install_path/$package_dir/
214
- cd $source_path/$package_dir/tool/nailgun && make
215
- popd
216
- chmod +x $install_path/$package_dir/bin/*
217
- rvm-gi jruby-openssl
218
279
  ;;
219
280
 
220
281
  ruby)
@@ -228,8 +289,6 @@ function rvm-install-ruby {
228
289
 
229
290
  esac
230
291
 
231
- rvm-gi rake
232
-
233
292
  }
234
293
 
235
294
  function rvm-use {
@@ -298,14 +357,14 @@ function rvm-use {
298
357
  esac
299
358
 
300
359
  if [ ! "$implementation" = "default" ] ; then
301
- RUBY_VERSION="$($MY_RUBY_HOME/bin/ruby -v | sed 's/^\(.*\) (.*$/\1/')"
302
- export GEM_HOME MY_RUBY_HOME RUBY_VERSION
303
-
304
360
  if [ ! -d $MY_RUBY_HOME ] ; then
305
- warn "$implementation $version is not installed, installing."
361
+ warn "$implementation $version is not installed."
306
362
  rvm-install-ruby $implementation $version $level
307
363
  fi
308
364
 
365
+ RUBY_VERSION="$($MY_RUBY_HOME/bin/ruby -v | sed 's/^\(.*\) (.*$/\1/')"
366
+ export GEM_HOME MY_RUBY_HOME RUBY_VERSION
367
+
309
368
  # Setup ~/.rvm/current
310
369
  echo "PATH=$MY_RUBY_HOME/bin:$GEM_HOME/bin:\$PATH ; export PATH" > ~/.rvm/current
311
370
  for variable in RUBY_VERSION GEM_HOME MY_RUBY_HOME ; do
@@ -323,27 +382,27 @@ function rvm-use {
323
382
  elif [ ! -z "$ZSH_VERSION" ] ; then
324
383
  exec zsh -l
325
384
  else
326
- fail "Your shell '$0' is not supported."
385
+ fail "Your shell is not supported bash and zsh are currently supported."
327
386
  fi
328
387
  }
329
388
 
330
389
  function rvm-gem-dir {
331
390
 
332
- case "$implementation" in
391
+ case "${1-implementation}" in
333
392
  jruby) GEM_HOME="$HOME/.gem/jruby/1.8" ;;
334
393
  ree) GEM_HOME="$HOME/.gem/ruby-enterprise/1.8" ;;
335
394
  ruby)
336
- if [ "$version" = "1.8" -o "$version" = "1.8.6" ] ; then
395
+ if [ "${2-version}" = "1.8" -o "${2-version}" = "1.8.6" ] ; then
337
396
  GEM_HOME="$HOME/.gem/ruby/1.8"
338
397
 
339
- elif [ "$version" = "1.9.2" ] ; then
398
+ elif [ "${2-version}" = "1.9.2" ] ; then
340
399
  GEM_HOME="$HOME/.gem/ruby/1.9.2"
341
400
 
342
- elif [ "$version" = "1.9" -o "$version" = "1.9.1" ] ; then
401
+ elif [ "${2-version}" = "1.9" -o "${2-version}" = "1.9.1" ] ; then
343
402
  GEM_HOME="$HOME/.gem/ruby/1.9.1"
344
403
 
345
404
  else
346
- fail "Unknown ruby version: $version"
405
+ fail "Unknown Version: ${2-version}"
347
406
  fi
348
407
  ;;
349
408
  *)
@@ -430,7 +489,7 @@ function rvm-gem-dup {
430
489
 
431
490
  }
432
491
 
433
- function rvm-version { info "rvm $rvm_version" ; }
492
+ function rvm-version { echo "rvm $rvm_version ($rvm_updated) [$rvm_website]" ; }
434
493
 
435
494
  function rvm {
436
495
 
@@ -447,7 +506,14 @@ function rvm {
447
506
  implementation="$token" ;;
448
507
  1.8|1.8.6|1.8.7|1.9|1.9.1|1.9.2|1.2.0|1.3.1)
449
508
  version="$token" ;;
450
- -v|--version) version="$1" ; shift ;;
509
+ -v|--version)
510
+ if [ -z "$1" ] ; then
511
+ action="version"
512
+ else
513
+ version="$1"
514
+ fi
515
+ shift
516
+ ;;
451
517
  -l|--level) patchlevel="$1" ; shift ;;
452
518
  -p|--prefix) install_path="$1" ; shift ;;
453
519
  -s|--source) source_path="$1" ; shift ;; # Undocumented / untested "feature"
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.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wayne E. Seguin