wayneeseguin-rvm 0.0.8 → 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/README +26 -22
- data/bash/rvm +102 -22
- data/bash/rvm-install +6 -0
- metadata +1 -1
data/README
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
About:
|
3
3
|
|
4
|
-
rvm 0.0.
|
4
|
+
rvm 0.0.8 http://github.com/wayneeseguin/rvm
|
5
5
|
|
6
6
|
by Wayne E. Seguin (wayneeseguin@gmail.com)
|
7
7
|
|
@@ -11,23 +11,24 @@
|
|
11
11
|
|
12
12
|
Action:
|
13
13
|
|
14
|
-
* usage
|
15
|
-
use
|
16
|
-
info
|
17
|
-
gemdir
|
18
|
-
srcdir
|
19
|
-
gemdup
|
20
|
-
|
21
|
-
install
|
22
|
-
|
14
|
+
* usage - Show this usage information
|
15
|
+
use - Switch to using a specific ruby versio (new login shell)
|
16
|
+
info - Show information for current ruby
|
17
|
+
gemdir - Switch to gem directory for installation (new login shell)
|
18
|
+
srcdir - Switch to src directory for the current ruby installation
|
19
|
+
gemdup - Clone source implementation version gems to currently used version
|
20
|
+
(expiramental) Example: rvm gemdup ~/.gem/ruby/1.8/
|
21
|
+
install - Install a ruby version, default is from source
|
22
|
+
uninstall - Uninstall a ruby version
|
23
|
+
debug - Emit environment and configuration information for debugging
|
23
24
|
|
24
25
|
Implementation:
|
25
26
|
|
26
|
-
* ruby
|
27
|
-
jruby
|
28
|
-
ree
|
29
|
-
default
|
30
|
-
all
|
27
|
+
* ruby - MRI/YARV Ruby (The Standard), defaults to 1.8.6
|
28
|
+
jruby - jRuby
|
29
|
+
ree - Ruby Enterprise Edition
|
30
|
+
default - Resets to the default system ruby
|
31
|
+
all - Used with install, installs all latest known versions
|
31
32
|
|
32
33
|
Options:
|
33
34
|
|
@@ -50,17 +51,20 @@
|
|
50
51
|
|
51
52
|
Examples:
|
52
53
|
|
53
|
-
$ gem install rvm
|
54
|
-
$ rvm-install
|
55
|
-
$ rvm install jruby
|
56
|
-
$ rvm use ruby -v 1.9.1
|
57
|
-
$ rvm use 1.9
|
58
|
-
$ rvm use 1.8
|
59
|
-
$ rvm use default
|
54
|
+
$ gem install rvm # Install the rvm gem
|
55
|
+
$ rvm-install # Install rvm, adds hooks for bash & zsh
|
56
|
+
$ rvm install jruby # Install jRuby (default version is 1.3.1)
|
57
|
+
$ rvm use ruby -v 1.9.1 # Use Ruby 1.9.1, installs if necessary
|
58
|
+
$ rvm use 1.9 # Equivalent to above, due to defaults
|
59
|
+
$ rvm use 1.8 # Use Ruby 1.8.6, installs if necessary
|
60
|
+
$ rvm use default # Use the system default (as if no rvm)
|
61
|
+
$ rvm gemdup ~/.gem/ruby/1.8/ # Install gems from ~/.gem/ruby/1.8/
|
60
62
|
|
61
63
|
TODO: (in order)
|
62
64
|
|
63
65
|
* rvm gemdir default
|
66
|
+
* root support
|
67
|
+
* Settings file, user overridable
|
64
68
|
|
65
69
|
Credits:
|
66
70
|
|
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.
|
6
|
+
rvm_version="0.0.9"
|
7
7
|
rvm_updated="2009.08.25"
|
8
8
|
|
9
9
|
#
|
@@ -32,6 +32,7 @@ function rvm-usage {
|
|
32
32
|
* usage - Show this usage information
|
33
33
|
use - Switch to using a specific ruby versio (new login shell)
|
34
34
|
info - Show information for current ruby
|
35
|
+
list - Show currently installed versions
|
35
36
|
gemdir - Switch to gem directory for installation (new login shell)
|
36
37
|
srcdir - Switch to src directory for the current ruby installation
|
37
38
|
gemdup - Clone source implementation version gems to currently used version
|
@@ -81,6 +82,9 @@ function rvm-usage {
|
|
81
82
|
TODO: (in order)
|
82
83
|
|
83
84
|
* rvm gemdir default
|
85
|
+
* root support
|
86
|
+
* Settings file, user overridable
|
87
|
+
* Show current in rvm list, if applicable
|
84
88
|
|
85
89
|
Credits:
|
86
90
|
|
@@ -292,16 +296,78 @@ function rvm-install-ruby {
|
|
292
296
|
|
293
297
|
}
|
294
298
|
|
299
|
+
function rvm-uninstall {
|
300
|
+
|
301
|
+
implementation="${1-$implementation}"
|
302
|
+
case "$implementation" in
|
303
|
+
|
304
|
+
jruby)
|
305
|
+
version="${version-1.3.1}"
|
306
|
+
if [ "$version" = "1.2.0" -o "$version" = "1.3.1" ] ; then
|
307
|
+
package_name="jruby*-$version"
|
308
|
+
else
|
309
|
+
fail "Unknown jRuby version: $version"
|
310
|
+
fi
|
311
|
+
;;
|
312
|
+
|
313
|
+
ree)
|
314
|
+
version=${version-1.8.6}
|
315
|
+
if [ "$version" = "1.8.6" ] ; then
|
316
|
+
package_name="$install_path/ruby-enterprise-$version-${3-20090610}"
|
317
|
+
else
|
318
|
+
fail "Unknown Ruby Enterprise Edition version: $version"
|
319
|
+
fi
|
320
|
+
;;
|
321
|
+
|
322
|
+
ruby)
|
323
|
+
if [ "$version" = "1.8.7" ] ; then
|
324
|
+
package_name="ruby-1.8.7-p${patchlevel-174}"
|
325
|
+
|
326
|
+
elif [ "$version" = "1.8.6" -o "$version" = "1.8" ] ; then
|
327
|
+
package_name="ruby-1.8.6-p${patchlevel-369}"
|
328
|
+
|
329
|
+
elif [ "$version" = "1.9.2" ] ; then
|
330
|
+
package_name="ruby-1.9.2-p${patchlevel-review1}"
|
331
|
+
|
332
|
+
elif [ "$version" = "1.9.1" -o "$version" = "1.9" ] ; then
|
333
|
+
package_name="ruby-1.9.1-p${patchlevel-243}"
|
334
|
+
|
335
|
+
else
|
336
|
+
fail "Unknown ruby version: $version"
|
337
|
+
fi
|
338
|
+
;;
|
339
|
+
|
340
|
+
*)
|
341
|
+
fail "Ruby implementation '$implementation' is not known."
|
342
|
+
|
343
|
+
esac
|
344
|
+
|
345
|
+
if [ ! -z "$package_name" ] ; then
|
346
|
+
for path in $source_path $install_path ; do
|
347
|
+
if [ -d $path/$package_name ] ; then
|
348
|
+
info "Removing $path/$package_name"
|
349
|
+
rm -rf $path/$package_name
|
350
|
+
fi
|
351
|
+
done
|
352
|
+
else
|
353
|
+
fail "Cannot uninstall unknown package '$package_name'"
|
354
|
+
fi
|
355
|
+
|
356
|
+
}
|
357
|
+
|
295
358
|
function rvm-use {
|
296
359
|
|
297
360
|
implementation="${1-$implementation}"
|
298
361
|
case "$implementation" in
|
299
362
|
|
300
363
|
default)
|
364
|
+
# TODO: There is a reproducible bug here when switching off of 1.8.7...
|
365
|
+
# Seems that the path is not reset properly.
|
301
366
|
rm -f ~/.rvm/current
|
302
367
|
unset MY_RUBY_HOME
|
303
368
|
unset GEM_HOME
|
304
369
|
unset RUBY_VERSION
|
370
|
+
PATH=$original_path ; export PATH
|
305
371
|
;;
|
306
372
|
#leopard) MY_RUBY_HOME="/System/Library/Frameworks/Ruby.framework/Versions/Current/usr"; GEM_HOME="$HOME/.gem/ruby/1.8" ;;
|
307
373
|
|
@@ -388,6 +454,18 @@ function rvm-use {
|
|
388
454
|
fail "Your shell is not supported bash and zsh are currently supported."
|
389
455
|
fi
|
390
456
|
}
|
457
|
+
|
458
|
+
function rvm-list {
|
459
|
+
echo -e "\nruby:"
|
460
|
+
ls -l ~/.rvm/ | awk '/ ruby-[1-2].*/ { print " - " $NF }'
|
461
|
+
echo
|
462
|
+
echo "jruby:"
|
463
|
+
ls -l ~/.rvm/ | awk '/jruby-.*/ { print " - " $NF }'
|
464
|
+
echo
|
465
|
+
echo "ree:"
|
466
|
+
ls ~/.rvm/ | awk '/ruby-enterprise-.*/ { print " - " $NF }'
|
467
|
+
echo
|
468
|
+
}
|
391
469
|
|
392
470
|
function rvm-gem-dir {
|
393
471
|
|
@@ -503,7 +581,7 @@ function rvm {
|
|
503
581
|
while [ $# -gt 0 ] ; do
|
504
582
|
token="$1" ; shift
|
505
583
|
case "$token" in
|
506
|
-
install|use|path|info|gemdir|setup|version|debug|srcdir)
|
584
|
+
install|uninstall|use|path|info|gemdir|setup|version|debug|srcdir|list)
|
507
585
|
action=$token ;;
|
508
586
|
ruby|jruby|ree|default|all)
|
509
587
|
implementation="$token" ;;
|
@@ -573,28 +651,30 @@ function rvm {
|
|
573
651
|
rvm-install-ruby $implementation $version $patchlevel
|
574
652
|
fi
|
575
653
|
;;
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
654
|
+
uninstall) rvm-uninstall $implementation $version $patchlevel ;;
|
655
|
+
use) rvm-use $implementation $version $patchlevel ;;
|
656
|
+
list) rvm-list ;;
|
657
|
+
gemdir) rvm-gem-dir $implementation $version $patchlevel ;;
|
658
|
+
srcdir) rvm-src-dir $implementation $version $patchlevel ;;
|
659
|
+
gemdup) rvm-gem-dup $implementation $version $patchlevel ;;
|
660
|
+
info) rvm-info $implementation $version $patchlevel ;;
|
661
|
+
version) rvm-version ;;
|
662
|
+
debug)
|
663
|
+
rvm-version
|
664
|
+
info "GEM_HOME: $GEM_HOME\nMY_RUBY_HOME: $MY_RUBY_HOME"
|
665
|
+
info "ruby: `which ruby`\ngem: `which gem`\nirb: `which irb`"
|
666
|
+
info "PATH:$(echo $PATH | awk -F":" '{print $1":"$2":"$3":"$4":"%5}')"
|
667
|
+
info "\n.bash_profile: \n$(cat ~/.bash_profile | tail -n 5)\n"
|
668
|
+
info "\n.rvm/current: \n$(cat ~/.rvm/current)\n"
|
669
|
+
return 0
|
590
670
|
;;
|
591
671
|
*)
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
672
|
+
if [ ! -z "$action" ] ; then
|
673
|
+
fail "unknown action '$action'"
|
674
|
+
else
|
675
|
+
rvm-usage
|
676
|
+
fi
|
677
|
+
return 1
|
598
678
|
esac
|
599
679
|
|
600
680
|
set +x
|
data/bash/rvm-install
CHANGED