rvm 1.0.6 → 1.0.7
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.
- data/README +2 -5
- data/binscripts/rvm-prompt +4 -2
- data/binscripts/rvm-shell +1 -1
- data/config/known +20 -20
- data/examples/rvmrc +0 -4
- data/install +153 -29
- data/lib/VERSION.yml +1 -1
- data/rvm.gemspec +2 -2
- data/scripts/alias +26 -22
- data/scripts/base +1 -1
- data/scripts/cleanup +32 -8
- data/scripts/cli +104 -115
- data/scripts/db +3 -3
- data/scripts/default +1 -1
- data/scripts/disk-usage +1 -1
- data/scripts/docs +28 -18
- data/scripts/env +1 -1
- data/scripts/environment-convertor +2 -2
- data/scripts/fetch +17 -17
- data/scripts/gemsets +394 -159
- data/scripts/help +8 -4
- data/scripts/hook +1 -1
- data/scripts/info +5 -5
- data/scripts/initialize +16 -6
- data/scripts/install +153 -29
- data/scripts/list +38 -35
- data/scripts/log +6 -3
- data/scripts/maglev +18 -18
- data/scripts/manage +306 -203
- data/scripts/migrate +12 -12
- data/scripts/monitor +5 -5
- data/scripts/notes +1 -1
- data/scripts/package +18 -12
- data/scripts/patches +8 -3
- data/scripts/patchsets +42 -10
- data/scripts/repair +12 -12
- data/scripts/rubygems +11 -11
- data/scripts/rvm +4 -7
- data/scripts/rvm-install +153 -29
- data/scripts/selector +139 -121
- data/scripts/set +11 -11
- data/scripts/snapshot +54 -35
- data/scripts/tools +2 -2
- data/scripts/update +153 -29
- data/scripts/upgrade +8 -8
- data/scripts/utility +59 -74
- data/scripts/wrapper +2 -2
- metadata +4 -4
data/scripts/rvm
CHANGED
@@ -4,9 +4,7 @@
|
|
4
4
|
# http://rvm.beginrescueend.com
|
5
5
|
# http://github.com/wayneeseguin/rvm
|
6
6
|
|
7
|
-
|
8
|
-
rvm_loaded_flag=${rvm_loaded_flag:-0}
|
9
|
-
if [[ $rvm_loaded_flag -eq 0 || $rvm_reload_flag -eq 1 ]] ; then
|
7
|
+
if [[ ${rvm_loaded_flag:-0} -eq 0 || ${rvm_reload_flag:-0} -eq 1 ]] ; then
|
10
8
|
rvm_reload_flag=0
|
11
9
|
|
12
10
|
if [[ -z "$rvm_ignore_rvmrc" ]]; then
|
@@ -50,14 +48,13 @@ if [[ $rvm_loaded_flag -eq 0 || $rvm_reload_flag -eq 1 ]] ; then
|
|
50
48
|
if [[ -z "$rvm_path" ]] ; then
|
51
49
|
rvm_path="${rvm_prefix}rvm"
|
52
50
|
fi
|
53
|
-
rvm_scripts_path="${rvm_scripts_path:-"$rvm_path/scripts"}"
|
54
51
|
|
55
52
|
if [[ -d "$rvm_path" ]] ; then
|
56
53
|
for script in array utility initialize version selector cli cd override_gem ; do
|
57
|
-
if [[ -f "$
|
58
|
-
source "$
|
54
|
+
if [[ -f "$rvm_path/scripts/$script" ]] ; then
|
55
|
+
source "$rvm_path/scripts/$script"
|
59
56
|
else
|
60
|
-
"$
|
57
|
+
"$rvm_path/scripts/log" "error" "RVM: Could not source script '$rvm_path/scripts/$script', file does not exist. RVM will likely not work as expected."
|
61
58
|
fi
|
62
59
|
done
|
63
60
|
|
data/scripts/rvm-install
CHANGED
@@ -126,7 +126,7 @@ Be sure to get head often as rvm development happens fast,
|
|
126
126
|
you can do this by running 'rvm update --head' followed by 'rvm reload'
|
127
127
|
or opening a new shell
|
128
128
|
|
129
|
-
w
|
129
|
+
w⦿‿⦿t
|
130
130
|
|
131
131
|
~ Wayne
|
132
132
|
|
@@ -145,7 +145,7 @@ Upgrade Notes
|
|
145
145
|
rvm remove X ; rvm install X
|
146
146
|
|
147
147
|
* If you wish to have the 'pretty colors' again, set in ~/.rvmrc:
|
148
|
-
export
|
148
|
+
export rvm_pretty_print_flag=1
|
149
149
|
"
|
150
150
|
}
|
151
151
|
|
@@ -192,6 +192,7 @@ __rvm_initialize
|
|
192
192
|
item="* "
|
193
193
|
question="\n<?>"
|
194
194
|
cwd="$PWD"
|
195
|
+
|
195
196
|
source_path="${source_path:-$cwd}"
|
196
197
|
rvm_archives_path="${rvm_archives_path:-"$rvm_path/archives"}"
|
197
198
|
rvm_src_path="${rvm_src_path:-"$rvm_path/src"}"
|
@@ -209,13 +210,10 @@ fi
|
|
209
210
|
|
210
211
|
rvm_gems_path="${rvm_gems_path:-"$rvm_path/gems"}"
|
211
212
|
rvm_rubies_path="${rvm_rubies_path:-"$rvm_path/rubies"}"
|
212
|
-
rvm_scripts_path="${rvm_scripts_path:-"$rvm_path/scripts"}"
|
213
213
|
rvm_config_path="${rvm_config_path:-"$rvm_path/config"}"
|
214
214
|
rvm_hooks_path="${rvm_hooks_path:-"$rvm_path/hooks"}"
|
215
215
|
rvm_tmp_path="${rvm_tmp_path:-"$rvm_path/tmp"}"
|
216
216
|
|
217
|
-
export rvm_gemset_separator="@" # TODO: Remove this after a while.
|
218
|
-
|
219
217
|
printf "
|
220
218
|
RVM: Shell scripts enabling management of multiple ruby environments.
|
221
219
|
RTFM: http://rvm.beginrescueend.com/
|
@@ -223,35 +221,60 @@ printf "
|
|
223
221
|
"
|
224
222
|
|
225
223
|
if [[ ${upgrade_flag:-0} -eq 1 ]] ;then
|
224
|
+
|
226
225
|
printf "\nUpgrading the RVM installation in $rvm_path/"
|
226
|
+
|
227
227
|
else
|
228
|
-
|
228
|
+
|
229
|
+
printf "\nInstalling RVM to $rvm_path/"
|
230
|
+
|
229
231
|
fi
|
230
232
|
|
231
|
-
|
233
|
+
for directory in "$rvm_archives_path" "$rvm_src_path" "$rvm_log_path" "$rvm_bin_path" "$rvm_gems_path" "$rvm_rubies_path" "$rvm_config_path" "$rvm_hooks_path" "$rvm_tmp_path" ; do
|
234
|
+
|
235
|
+
if [[ ! -d "$directory" ]] ; then
|
236
|
+
|
237
|
+
mkdir -p "$directory"
|
238
|
+
|
239
|
+
fi
|
240
|
+
|
241
|
+
done
|
232
242
|
|
233
243
|
for file in README LICENCE ; do
|
244
|
+
|
234
245
|
cp -f "$source_path/$file" "$rvm_path/"
|
246
|
+
|
235
247
|
done
|
236
248
|
|
237
249
|
#
|
238
250
|
# Scripts
|
239
251
|
#
|
240
252
|
for dir_name in config scripts examples lib hooks help patches; do
|
241
|
-
|
253
|
+
|
242
254
|
if [[ -d "$source_path/$dir_name" ]] ; then
|
255
|
+
|
256
|
+
if [[ ! -d "$rvm_path/$dir_name" ]] ; then
|
257
|
+
|
258
|
+
mkdir -p "$rvm_path/$dir_name"
|
259
|
+
|
260
|
+
fi
|
261
|
+
|
243
262
|
cp -Rf "$source_path/$dir_name" "$rvm_path"
|
263
|
+
|
244
264
|
fi
|
245
|
-
|
265
|
+
|
266
|
+
done
|
246
267
|
|
247
268
|
if [[ ! -s "$rvm_config_path/user" ]] ; then
|
248
|
-
mkdir -p "$rvm_config_path/"
|
249
269
|
echo '# Users settings file, overrides db file settings and persists across installs.' >> "$rvm_config_path/user"
|
250
270
|
fi
|
251
271
|
|
252
|
-
scripts=(
|
272
|
+
scripts=(monitor match log install color db fetch log set package)
|
273
|
+
|
253
274
|
for script_name in "${scripts[@]}" ; do
|
254
|
-
|
275
|
+
|
276
|
+
chmod +x "$rvm_path/scripts/$script_name" 2>/dev/null # Hide errors.
|
277
|
+
|
255
278
|
done
|
256
279
|
|
257
280
|
#
|
@@ -259,29 +282,48 @@ done
|
|
259
282
|
#
|
260
283
|
# Cleanse and purge...
|
261
284
|
for file in rvm-prompt rvm rvmsudo rvm-shell rvm-auto-ruby ; do
|
285
|
+
|
262
286
|
rm -f "$rvm_bin_path/$file"
|
287
|
+
|
263
288
|
cp -f "$source_path/binscripts/$file" $rvm_bin_path/
|
289
|
+
|
264
290
|
done
|
265
|
-
|
291
|
+
|
292
|
+
chmod +x "$rvm_bin_path"/* # TODO: this is quite suboptimal.
|
266
293
|
|
267
294
|
#
|
268
295
|
# RC Files
|
269
296
|
#
|
270
297
|
if [[ -n "$rvm_auto_flag" ]] ; then
|
298
|
+
|
271
299
|
printf "Checking rc files... ($rvm_rc_files)"
|
300
|
+
|
272
301
|
if [[ "$rvm_loaded_flag" != "1" ]] ; then
|
302
|
+
|
273
303
|
for rcfile in $(printf $rvm_rc_files) ; do
|
304
|
+
|
274
305
|
if [[ ! -f $rcfile ]] ; then touch $rcfile ; fi
|
306
|
+
|
275
307
|
if [[ -s "$HOME/.profile" ]] ; then
|
308
|
+
|
276
309
|
if ! grep -q '.profile' "$rcfile" ; then
|
310
|
+
|
277
311
|
echo " Adding 'if [[ -s \$HOME/.profile ]] ; then source \$HOME ; fi' to $rcfile."
|
312
|
+
|
278
313
|
printf "\n# rvm-install added line:\nif [[ -s \$HOME/.profile ]] ; then source \$HOME/.profile ; fi\n" >> "$rcfile"
|
314
|
+
|
279
315
|
fi
|
316
|
+
|
280
317
|
fi
|
318
|
+
|
281
319
|
if ! grep -q "scripts\/rvm" "$rcfile" ; then
|
282
|
-
|
283
|
-
|
320
|
+
|
321
|
+
echo " Adding 'if [[ -s $rvm_path/scripts/rvm ]] ; then source $rvm_path/scripts/rvm ; fi' to $rcfile."
|
322
|
+
|
323
|
+
printf "\n# rvm-install added:\nif [[ -s $rvm_path/scripts/rvm ]] ; then source $rvm_path/scripts/rvm ; fi\n" >> "$rcfile"
|
324
|
+
|
284
325
|
fi
|
326
|
+
|
285
327
|
done
|
286
328
|
fi
|
287
329
|
fi
|
@@ -290,47 +332,91 @@ fi
|
|
290
332
|
# Initial Interpreter Gemsets.
|
291
333
|
#
|
292
334
|
if [[ -d gemsets/ ]] ; then
|
293
|
-
|
335
|
+
|
336
|
+
if [[ ! -d "$rvm_path/gemsets" ]] ; then
|
337
|
+
|
338
|
+
mkdir -p "$rvm_path/gemsets"
|
339
|
+
|
340
|
+
fi
|
294
341
|
|
295
342
|
for gemset_file in $(builtin cd gemsets ; find \. -iname '*.gems' | sed 's/^\.\///') ; do
|
296
|
-
|
343
|
+
|
344
|
+
destination="$rvm_path/gemsets/$gemset_file"
|
345
|
+
|
297
346
|
destination_path="$(dirname "$destination")"
|
347
|
+
|
298
348
|
if [[ ! -s "$destination" ]] ; then
|
349
|
+
|
299
350
|
mkdir -p "$destination_path"
|
351
|
+
|
300
352
|
cp "gemsets/$gemset_file" "$destination"
|
353
|
+
|
301
354
|
fi
|
302
|
-
|
355
|
+
|
356
|
+
done
|
357
|
+
|
358
|
+
unset destination destination_path gemset_file
|
359
|
+
|
303
360
|
fi
|
304
361
|
|
305
362
|
if [[ -d patchsets/ ]] ; then
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
363
|
+
|
364
|
+
if [[ ! -d "$rvm_path/patchsets" ]] ; then
|
365
|
+
|
366
|
+
mkdir -p "$rvm_path/patchsets"
|
367
|
+
|
368
|
+
fi
|
369
|
+
|
370
|
+
patchsets=($(builtin cd patchsets ; find \. -iname '*' | sed 's/^\.\///'))
|
371
|
+
|
372
|
+
for patchset_file in "${patchsets[@]}" ; do
|
373
|
+
|
374
|
+
destination="$rvm_path/patchsets/$patchset_file"
|
375
|
+
|
310
376
|
if [[ ! -s "$destination" ]] ; then
|
377
|
+
|
378
|
+
destination_path="$(dirname "$destination")"
|
379
|
+
|
311
380
|
mkdir -p "$destination_path"
|
381
|
+
|
312
382
|
cp "patchsets/$patchset_file" "$destination"
|
383
|
+
|
313
384
|
fi
|
314
|
-
done
|
385
|
+
done
|
386
|
+
|
315
387
|
fi
|
316
388
|
|
317
389
|
#
|
318
390
|
# Migrate ~/.rvm/ruby-X,jruby-X,... to ~/.rvm/rubies/ for 0.1.0.
|
319
391
|
#
|
320
392
|
rvm_rubies_path="${rvm_rubies_path:-"$rvm_path/rubies"}"
|
393
|
+
|
321
394
|
mkdir -p "$rvm_rubies_path/"
|
395
|
+
|
322
396
|
for ruby in $rvm_path/ruby-* $rvm_path/jruby-* $rvm_path/mput-* $rvm_path/rbx-* $rvm_path/maglev-* $rvm_path/ree-* ; do
|
397
|
+
|
323
398
|
if [[ -d "$ruby" ]] ; then
|
399
|
+
|
324
400
|
mv "$ruby" "$rvm_rubies_path/"
|
401
|
+
|
325
402
|
new_path="$rvm_rubies_path/$(basename $ruby)"
|
403
|
+
|
326
404
|
for file in gem rake ; do
|
405
|
+
|
327
406
|
if [[ -s "$new_path/bin/$file" ]] ; then
|
407
|
+
|
328
408
|
sed -e '1,1s=.*=#!'"${new_path}/bin/ruby=" "${new_path}/bin/${file}" > "${new_path}/bin/${file}.new"
|
409
|
+
|
329
410
|
mv -f "$new_path/bin/$file.new" "$new_path/bin/$file"
|
411
|
+
|
330
412
|
chmod +x "$new_path/bin/$file"
|
413
|
+
|
331
414
|
fi
|
415
|
+
|
332
416
|
done
|
417
|
+
|
333
418
|
fi
|
419
|
+
|
334
420
|
done
|
335
421
|
#
|
336
422
|
# End of rubies migration.
|
@@ -340,36 +426,60 @@ done
|
|
340
426
|
# Migrate old gemset directories to new gemset pattern.
|
341
427
|
#
|
342
428
|
for gemset in "$rvm_path"/gems/*\%* ; do
|
343
|
-
|
429
|
+
|
430
|
+
new_path=${gemset/\%/${rvm_gemset_separator:-"@"}}
|
431
|
+
|
344
432
|
if [[ -d "$gemset" ]] && [[ ! -d "$new_path" ]] ; then
|
433
|
+
|
345
434
|
printf "\n Renaming $(basename "$gemset") to $(basename "$new_path") for new gemset separator."
|
435
|
+
|
346
436
|
mv "$gemset" "$new_path"
|
437
|
+
|
347
438
|
fi
|
439
|
+
|
348
440
|
done
|
349
441
|
|
350
442
|
for gemset in "$rvm_path"/gems/*\+* ; do
|
351
|
-
|
443
|
+
|
444
|
+
new_path=${gemset/\+/${rvm_gemset_separator:-"@"}}
|
445
|
+
|
352
446
|
if [[ -d "$gemset" && ! -d "$new_path" ]] ; then
|
447
|
+
|
353
448
|
printf "\n Renaming $(basename "$gemset") to $(basename "$new_path") for new gemset separator."
|
449
|
+
|
354
450
|
mv $gemset $new_path
|
451
|
+
|
355
452
|
fi
|
453
|
+
|
356
454
|
done
|
357
455
|
|
358
456
|
for gemset in "$rvm_path"/gems/*\@ ; do
|
457
|
+
|
359
458
|
new_path=$(echo $gemset | sed -e 's#\@$##')
|
459
|
+
|
360
460
|
if [[ -d "$gemset" && ! -d "$new_path" ]] ; then
|
461
|
+
|
361
462
|
printf "\n Fixing: $(basename "$gemset") to $(basename "$new_path") for new gemset separator."
|
463
|
+
|
362
464
|
mv "$gemset" "$new_path"
|
465
|
+
|
363
466
|
fi
|
467
|
+
|
364
468
|
done
|
365
469
|
|
366
470
|
# Move from legacy defaults to the new, alias based system.
|
367
471
|
if [[ -s "$rvm_config_path/default" ]]; then
|
368
|
-
|
472
|
+
|
473
|
+
original_version="$(basename "$(grep GEM_HOME "$rvm_config_path/default" | awk -F"'" '{print $2}' | sed "s#\%#${rvm_gemset_separator:-"@"}#")")"
|
474
|
+
|
369
475
|
if [[ -n "$original_version" ]]; then
|
370
|
-
|
476
|
+
|
477
|
+
"$rvm_path/scripts/alias" create default "$original_version" &> /dev/null
|
478
|
+
|
371
479
|
fi ; unset original_version
|
480
|
+
|
372
481
|
rm -rf "$rvm_config_path/default"
|
482
|
+
|
373
483
|
fi
|
374
484
|
|
375
485
|
#
|
@@ -380,13 +490,21 @@ printf "\n Correct permissions for base binaries in $rvm_bin_path..."
|
|
380
490
|
mkdir -p "$rvm_bin_path"
|
381
491
|
|
382
492
|
for file in rvm rvmsudo rvm-shell rvm-auto-ruby ; do
|
493
|
+
|
383
494
|
[[ -s "$rvm_bin_path/$file" ]] && chmod +x "$rvm_bin_path/$file"
|
384
|
-
|
495
|
+
|
496
|
+
done
|
497
|
+
|
385
498
|
printf "\n Copying manpages into place."
|
386
499
|
|
387
|
-
|
500
|
+
files=($(builtin cd "$install_source_path/man" ; find . -maxdepth 1 -mindepth 1 -type f -print))
|
501
|
+
|
502
|
+
for file in "${files[@]//.\/}" ; do
|
503
|
+
|
388
504
|
rm -rf "$rvm_man_path/$man_file"
|
505
|
+
|
389
506
|
cp -R "$install_source_path/man/$man_file" "$rvm_man_path/"
|
507
|
+
|
390
508
|
done
|
391
509
|
|
392
510
|
[[ "$upgrade_flag" = 0 ]] && ./scripts/notes
|
@@ -400,13 +518,19 @@ if [[ ${upgrade_flag:-0} -eq 1 ]] ; then
|
|
400
518
|
check_rubyopt_conditions
|
401
519
|
|
402
520
|
printf "\nUpgrade of RVM in $rvm_path/ is complete.\n\n"
|
521
|
+
|
403
522
|
else
|
523
|
+
|
404
524
|
if [[ ${rvm_selfcontained:-0} -eq 1 ]] ; then
|
525
|
+
|
405
526
|
installation_complete
|
527
|
+
|
406
528
|
fi
|
407
529
|
|
408
530
|
if [[ -s "$HOME/.bashrc" ]] && grep -q '&& return' "$HOME/.bashrc" ; then
|
531
|
+
|
409
532
|
andand_return_warning
|
533
|
+
|
410
534
|
fi
|
411
535
|
|
412
536
|
check_rubyopt_conditions
|
data/scripts/selector
CHANGED
@@ -44,7 +44,7 @@ __rvm_select() {
|
|
44
44
|
fi
|
45
45
|
rvm_ruby_patch_level=""
|
46
46
|
else
|
47
|
-
"$
|
47
|
+
"$rvm_path/scripts/log" "fail" "MacRuby can only be installed on a Darwin OS."
|
48
48
|
fi
|
49
49
|
;;
|
50
50
|
|
@@ -151,8 +151,8 @@ __rvm_select() {
|
|
151
151
|
fi
|
152
152
|
fi
|
153
153
|
|
154
|
-
if ! "$
|
155
|
-
"$
|
154
|
+
if ! "$rvm_path/scripts/match" "$rvm_ruby_version" "^1\.8" ; then
|
155
|
+
"$rvm_path/scripts/log" "fail" "Unknown Ruby Enterprise Edition version: $rvm_ruby_version"
|
156
156
|
fi
|
157
157
|
;;
|
158
158
|
|
@@ -168,7 +168,7 @@ __rvm_select() {
|
|
168
168
|
|
169
169
|
ruby)
|
170
170
|
if [[ -z "${rvm_ruby_version:-""}" && ${rvm_head_flag:-0} -eq 0 ]]; then
|
171
|
-
"$
|
171
|
+
"$rvm_path/scripts/log" "fail" "Unknown ruby version: $rvm_ruby_version"
|
172
172
|
|
173
173
|
else
|
174
174
|
rvm_ruby_repo_url="${rvm_ruby_repo_url:-"$(__rvm_db "ruby_repo_url")"}"
|
@@ -182,7 +182,7 @@ __rvm_select() {
|
|
182
182
|
current)
|
183
183
|
ruby_binary="$(command -v ruby)"
|
184
184
|
|
185
|
-
if [[ $? -eq 0 ]] && "$
|
185
|
+
if [[ $? -eq 0 ]] && "$rvm_path/scripts/match" "$ruby_binary" "rvm" ; then
|
186
186
|
rvm_ruby_string="$(dirname "$ruby_binary" | xargs dirname | xargs basename)"
|
187
187
|
|
188
188
|
else
|
@@ -201,7 +201,7 @@ __rvm_select() {
|
|
201
201
|
|
202
202
|
else
|
203
203
|
if [[ -z "${rvm_ruby_string:-""}" ]] ; then
|
204
|
-
"$
|
204
|
+
"$rvm_path/scripts/log" "fail" "Ruby implementation '$rvm_ruby_interpreter' is not known."
|
205
205
|
return 1
|
206
206
|
fi
|
207
207
|
fi
|
@@ -233,8 +233,8 @@ __rvm_select() {
|
|
233
233
|
fi
|
234
234
|
|
235
235
|
if [[ ! -z "$rvm_gemset_name" ]] ; then
|
236
|
-
rvm_ruby_gem_home="${rvm_ruby_gem_home}${rvm_gemset_separator}${rvm_gemset_name}"
|
237
|
-
rvm_ruby_gem_path="${rvm_ruby_gem_home}:${rvm_gems_path}/${rvm_ruby_string}${rvm_gemset_separator}global"
|
236
|
+
rvm_ruby_gem_home="${rvm_ruby_gem_home}${rvm_gemset_separator:-"@"}${rvm_gemset_name}"
|
237
|
+
rvm_ruby_gem_path="${rvm_ruby_gem_home}:${rvm_gems_path}/${rvm_ruby_string}${rvm_gemset_separator:-"@"}global"
|
238
238
|
fi
|
239
239
|
|
240
240
|
rvm_ruby_selected_flag=1
|
@@ -287,7 +287,9 @@ __rvm_use() {
|
|
287
287
|
done
|
288
288
|
fi
|
289
289
|
|
290
|
-
[[ ${rvm_verbose_flag:-0} -gt 0 ]]
|
290
|
+
if [[ ${rvm_verbose_flag:-0} -gt 0 ]] ; then
|
291
|
+
"$rvm_path/scripts/log" "info" "Now using system ruby."
|
292
|
+
fi
|
291
293
|
|
292
294
|
export rvm_ruby_string="system"
|
293
295
|
|
@@ -304,11 +306,14 @@ __rvm_use() {
|
|
304
306
|
IRBRC=${IRBRC:-""} ; if [[ -z "$IRBRC" ]] ; then unset IRBRC ; fi
|
305
307
|
|
306
308
|
if [[ ! -d "$MY_RUBY_HOME" ]] ; then
|
307
|
-
"$
|
309
|
+
"$rvm_path/scripts/log" "warn" \
|
310
|
+
"$rvm_ruby_interpreter $rvm_ruby_string is not installed."
|
311
|
+
|
308
312
|
if [[ ${rvm_install_on_use_flag:-0} -eq 1 ]] ; then
|
309
|
-
"$
|
313
|
+
"$rvm_path/scripts/manage" "install" "$rvm_ruby_string"
|
310
314
|
else
|
311
|
-
"$
|
315
|
+
"$rvm_path/scripts/log" "info" \
|
316
|
+
"To install do: 'rvm install $rvm_ruby_string'"
|
312
317
|
return 1
|
313
318
|
fi
|
314
319
|
fi
|
@@ -317,7 +322,7 @@ __rvm_use() {
|
|
317
322
|
__rvm_ensure_has_environment_files
|
318
323
|
|
319
324
|
[[ ${rvm_verbose_flag:-0} -gt 0 ]] && \
|
320
|
-
"$
|
325
|
+
"$rvm_path/scripts/log" "info" \
|
321
326
|
"Using ${GEM_HOME/${rvm_gemset_separator:-'@'}/ with gemset }"
|
322
327
|
|
323
328
|
new_path="$GEM_HOME/bin:$rvm_ruby_global_gems_path/bin:$MY_RUBY_HOME/bin:$rvm_bin_path:$(__rvm_remove_rvm_from_path ; printf "$PATH")"
|
@@ -342,13 +347,13 @@ __rvm_use() {
|
|
342
347
|
|
343
348
|
if [[ "${rvm_selfcontained:-""}" = "0" ]] ; then
|
344
349
|
# Sets up the default wrappers.
|
345
|
-
"$
|
350
|
+
"$rvm_path/scripts/wrapper" "$rvm_ruby_string" --no-prefix
|
346
351
|
else
|
347
|
-
"$
|
352
|
+
"$rvm_path/scripts/wrapper" "$rvm_path/scripts" "default"
|
348
353
|
fi
|
349
354
|
|
350
355
|
if [[ "system" = "$rvm_ruby_interpreter" ]] ; then
|
351
|
-
"$
|
356
|
+
"$rvm_path/scripts/alias" delete default &> /dev/null
|
352
357
|
\find "$rvm_bin_path" -name 'default_*' -maxdepth 0 -delete
|
353
358
|
\rm -f "$rvm_config_path/default"
|
354
359
|
\rm -f "$rvm_environments_path/default"
|
@@ -357,8 +362,8 @@ __rvm_use() {
|
|
357
362
|
else
|
358
363
|
RUBY_VERSION="$("$rvm_ruby_home/bin/ruby" -v | sed 's#^\(.*\) (.*$#\1#')"
|
359
364
|
export GEM_HOME GEM_PATH BUNDLE_PATH MY_RUBY_HOME RUBY_VERSION
|
360
|
-
"$
|
361
|
-
"$
|
365
|
+
"$rvm_path/scripts/alias" delete default &> /dev/null
|
366
|
+
"$rvm_path/scripts/alias" create default "$environment_id" >& /dev/null
|
362
367
|
\ln -nfs "$rvm_environments_path/$environment_id" "$rvm_environments_path/default"
|
363
368
|
\ln -nfs "$rvm_wrappers_path/$environment_id" "$rvm_wrappers_path/default"
|
364
369
|
fi
|
@@ -367,14 +372,14 @@ __rvm_use() {
|
|
367
372
|
rvm_default_flag=0
|
368
373
|
|
369
374
|
if [[ -n "${rvm_wrapper_name:-""}" ]] ; then
|
370
|
-
"$
|
375
|
+
"$rvm_path/scripts/wrapper" "$environment_id" "$rvm_wrapper_name" > /dev/null 2>&1
|
371
376
|
rvm_wrapper_name=""
|
372
377
|
fi
|
373
378
|
|
374
379
|
if [[ -n "${rvm_ruby_alias:-""}" ]]; then
|
375
|
-
"$
|
376
|
-
"$
|
377
|
-
rvm_alias_expanded=1 "$
|
380
|
+
"$rvm_path/scripts/log" "info" "Attempting to alias $environment_id to $rvm_ruby_alias"
|
381
|
+
"$rvm_path/scripts/alias" delete "$rvm_ruby_alias" > /dev/null 2>&1
|
382
|
+
rvm_alias_expanded=1 "$rvm_path/scripts/alias" create "$rvm_ruby_alias" "$environment_id" > /dev/null 2>&1
|
378
383
|
ruby_alias="" ; rvm_ruby_alias=""
|
379
384
|
fi
|
380
385
|
|
@@ -387,7 +392,7 @@ __rvm_use() {
|
|
387
392
|
fi
|
388
393
|
fi
|
389
394
|
|
390
|
-
rvm_hook="after_use" ; source "$
|
395
|
+
rvm_hook="after_use" ; source "$rvm_path/scripts/hook"
|
391
396
|
|
392
397
|
return 0
|
393
398
|
}
|
@@ -411,15 +416,15 @@ __rvm_ruby_string() {
|
|
411
416
|
rvm_ruby_revision=${rvm_ruby_revision:-""}
|
412
417
|
rvm_ruby_tag=${rvm_ruby_tag:-""}
|
413
418
|
|
414
|
-
if echo "$rvm_ruby_string" | \grep -q "$rvm_gemset_separator" ; then
|
415
|
-
rvm_gemset_name="${rvm_ruby_string/*${rvm_gemset_separator}/}"
|
416
|
-
rvm_ruby_string="${rvm_ruby_string/${rvm_gemset_separator}*/}"
|
419
|
+
if echo "$rvm_ruby_string" | \grep -q "${rvm_gemset_separator:-"@"}" ; then
|
420
|
+
rvm_gemset_name="${rvm_ruby_string/*${rvm_gemset_separator:-"@"}/}"
|
421
|
+
rvm_ruby_string="${rvm_ruby_string/${rvm_gemset_separator:-"@"}*/}"
|
417
422
|
rvm_sticky_flag=1
|
418
423
|
fi
|
419
424
|
|
420
425
|
# Alias'd rubies
|
421
426
|
if [[ ${rvm_expanding_aliases:-0} -eq 0 && -n ${rvm_ruby_string:-""} ]]; then
|
422
|
-
if expanded_alias_name="$("$
|
427
|
+
if expanded_alias_name="$("$rvm_path/scripts/alias" show "$rvm_ruby_string" 2>/dev/null)" && [[ -n "$expanded_alias_name" ]] ; then
|
423
428
|
rvm_ruby_string="$expanded_alias_name"
|
424
429
|
|
425
430
|
elif [[ "$rvm_ruby_string" = default ]]; then
|
@@ -428,96 +433,109 @@ __rvm_ruby_string() {
|
|
428
433
|
fi
|
429
434
|
fi
|
430
435
|
|
431
|
-
ruby_string=${rvm_ruby_string/${rvm_gemset_separator}*/}
|
436
|
+
ruby_string=${rvm_ruby_string/${rvm_gemset_separator:-"@"}*/}
|
432
437
|
|
433
438
|
__rvm_unset_ruby_variables
|
434
439
|
|
435
|
-
strings=(${ruby_string//-/ })
|
440
|
+
strings=($(echo ${ruby_string//-/ }))
|
441
|
+
|
442
|
+
if [[ ${#strings[@]} -eq 0 ]] ; then
|
443
|
+
|
444
|
+
if echo "${GEM_HOME:-""}" | grep -q "rvm" ; then
|
445
|
+
# Current Ruby
|
446
|
+
strings="${GEM_HOME##*\/}"
|
447
|
+
strings=("${strings/%${rvm_gemset_separator:-"@"}*}")
|
448
|
+
rvm_ruby_string=${strings[@]:(1)}
|
449
|
+
else
|
450
|
+
strings=(system)
|
451
|
+
rvm_ruby_string="system"
|
452
|
+
fi
|
453
|
+
fi
|
436
454
|
|
437
|
-
for string in "${strings[@]}" ; do
|
455
|
+
for string in "${strings[@]:-""}" ; do
|
438
456
|
|
439
457
|
# TODO: case...
|
440
458
|
|
441
459
|
case "$string" in
|
442
460
|
head)
|
443
461
|
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
system)
|
450
|
-
rvm_ruby_interpreter="system"
|
451
|
-
rvm_ruby_patch_level="" ; rvm_ruby_tag="" ; rvm_head_flag=0 ; rvm_ruby_revision="" ; rvm_ruby_version="" ; rvm_gemset_name=""
|
452
|
-
return 0
|
453
|
-
;;
|
454
|
-
|
455
|
-
nightly)
|
456
|
-
rvm_ruby_version="nightly"
|
457
|
-
rvm_nightly_flag=1
|
458
|
-
break
|
459
|
-
;;
|
460
|
-
|
461
|
-
preview*)
|
462
|
-
rvm_ruby_patch_level="$string"
|
463
|
-
;;
|
462
|
+
rvm_ruby_revision="head"
|
463
|
+
rvm_ruby_patch_level="" ; rvm_ruby_revision="" ; rvm_ruby_tag=""
|
464
|
+
export rvm_head_flag=1
|
465
|
+
;;
|
464
466
|
|
465
|
-
|
466
|
-
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
467
|
+
system)
|
468
|
+
rvm_ruby_interpreter="system"
|
469
|
+
rvm_ruby_patch_level="" ; rvm_ruby_tag="" ; rvm_head_flag=0 ; rvm_ruby_revision="" ; rvm_ruby_version="" ; rvm_gemset_name=""
|
470
|
+
return 0
|
471
|
+
;;
|
472
|
+
|
473
|
+
nightly)
|
474
|
+
rvm_ruby_version="nightly"
|
475
|
+
rvm_nightly_flag=1
|
476
|
+
break
|
477
|
+
;;
|
478
|
+
|
479
|
+
preview*)
|
480
|
+
rvm_ruby_patch_level="$string"
|
481
|
+
;;
|
482
|
+
|
483
|
+
rc[[:digit:]]*)
|
484
|
+
rvm_ruby_patch_level="$string"
|
485
|
+
;;
|
486
|
+
|
487
|
+
[[:digit:]]\.[[:digit:]]*)
|
488
|
+
rvm_ruby_version="$string"
|
489
|
+
rvm_ruby_revision=""
|
490
|
+
rvm_ruby_tag=""
|
491
|
+
;;
|
492
|
+
|
493
|
+
p[[:digit:]]*)
|
494
|
+
rvm_ruby_patch_level="$string"
|
495
|
+
;;
|
496
|
+
|
497
|
+
#elif [[ -n "${rvm_ruby_version:-""}" ]] && "$rvm_path/scripts/match" "$string" "^
|
498
|
+
[[:digit:]][[:digit:]]*)
|
499
|
+
|
500
|
+
case "${rvm_ruby_interpreter:-""}" in
|
501
|
+
ree)
|
502
|
+
rvm_ruby_patch_level="$string"
|
503
|
+
rvm_ruby_revision=""
|
504
|
+
;;
|
505
|
+
|
506
|
+
rbx)
|
507
|
+
rvm_ruby_patch_level="$string"
|
508
|
+
;;
|
509
|
+
|
510
|
+
maglev)
|
511
|
+
rvm_ruby_version="$string"
|
512
|
+
rvm_ruby_revision=""
|
513
|
+
rvm_ruby_patch_level=""
|
514
|
+
;;
|
515
|
+
|
516
|
+
*)
|
517
|
+
rvm_ruby_revision="r$string"
|
518
|
+
;;
|
519
|
+
esac
|
520
|
+
;;
|
521
|
+
|
522
|
+
r[[:digit:]]*)
|
523
|
+
rvm_ruby_patch_level=""
|
524
|
+
rvm_ruby_revision="$string"
|
525
|
+
;;
|
508
526
|
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
527
|
+
s[[:digit:]]*)
|
528
|
+
rvm_ruby_revision=""
|
529
|
+
rvm_ruby_sha="$string"
|
530
|
+
;;
|
513
531
|
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
532
|
+
tv[[:digit:]]* | t[[:digit:]]*)
|
533
|
+
rvm_ruby_patch_level="" ; rvm_ruby_revision=""
|
534
|
+
rvm_ruby_tag="$string"
|
535
|
+
;;
|
518
536
|
|
519
|
-
|
520
|
-
|
537
|
+
m[[:digit:]]*)
|
538
|
+
rvm_ruby_mode="$string"
|
521
539
|
;;
|
522
540
|
|
523
541
|
u[[:alnum:]]*)
|
@@ -538,7 +556,7 @@ __rvm_ruby_string() {
|
|
538
556
|
;;
|
539
557
|
|
540
558
|
*)
|
541
|
-
"$
|
559
|
+
"$rvm_path/scripts/log" "error" \
|
542
560
|
"Unknown ruby string component: '$string'"
|
543
561
|
return 1
|
544
562
|
;;
|
@@ -623,7 +641,7 @@ __rvm_gemset_select() {
|
|
623
641
|
|
624
642
|
rvm_ruby_gem_home=${rvm_ruby_gem_home:-""}
|
625
643
|
rvm_gemset_name=${rvm_gemset_name:-""}
|
626
|
-
rvm_ruby_global_gems_path="$rvm_path/gems/${rvm_ruby_string:-""}${rvm_gemset_separator}global"
|
644
|
+
rvm_ruby_global_gems_path="$rvm_path/gems/${rvm_ruby_string:-""}${rvm_gemset_separator:-"@"}global"
|
627
645
|
|
628
646
|
if [[ -z "${rvm_gemset_name:-""}" ]] ; then
|
629
647
|
|
@@ -632,17 +650,17 @@ __rvm_gemset_select() {
|
|
632
650
|
if [[ ${rvm_sticky_flag:-0} -eq 1 ]] ; then
|
633
651
|
|
634
652
|
if [[ -n "${GEM_HOME:-""}" ]] ; then
|
635
|
-
rvm_gemset_name=$(echo $GEM_HOME | xargs basename | awk -F${rvm_gemset_separator} '{print $2}')
|
653
|
+
rvm_gemset_name=$(echo $GEM_HOME | xargs basename | awk -F${rvm_gemset_separator:-"@"} '{print $2}')
|
636
654
|
fi
|
637
655
|
|
638
656
|
if [[ -n "${rvm_ruby_gem_home:-""}" ]] ; then
|
639
|
-
rvm_gemset_name=$(echo $rvm_ruby_gem_home | xargs basename | awk -F${rvm_gemset_separator} '{print $2}')
|
657
|
+
rvm_gemset_name=$(echo $rvm_ruby_gem_home | xargs basename | awk -F${rvm_gemset_separator:-"@"} '{print $2}')
|
640
658
|
fi
|
641
659
|
fi
|
642
660
|
|
643
661
|
if ! echo "${rvm_gemset_name:-""}" | grep -q "^[[:digit:]]\.[[:digit:]]" ; then
|
644
662
|
|
645
|
-
rvm_ruby_gem_home="$rvm_gems_path/${rvm_ruby_string}${rvm_gemset_separator}${rvm_gemset_name}"
|
663
|
+
rvm_ruby_gem_home="$rvm_gems_path/${rvm_ruby_string}${rvm_gemset_separator:-"@"}${rvm_gemset_name}"
|
646
664
|
|
647
665
|
else
|
648
666
|
if [[ -n "${rvm_ruby_string:-""}" && "${rvm_ruby_interpreter:-""}" != "system" ]] ; then
|
@@ -668,13 +686,13 @@ __rvm_gemset_select() {
|
|
668
686
|
if [[ -n "${rvm_ruby_string:-""}" ]] ; then
|
669
687
|
|
670
688
|
if [[ -z "${rvm_ruby_gem_home:-""}" || -n "${gemset:-""}" ]] ; then
|
671
|
-
rvm_ruby_gem_home="$rvm_gems_path/${rvm_ruby_string}${rvm_gemset_separator}${rvm_gemset_name}"
|
689
|
+
rvm_ruby_gem_home="$rvm_gems_path/${rvm_ruby_string}${rvm_gemset_separator:-"@"}${rvm_gemset_name}"
|
672
690
|
|
673
691
|
elif [[ -n "${gemset:-""}" && "${rvm_gemset_name:-""}" != "${gemset:-""}" ]] ; then
|
674
|
-
rvm_ruby_gem_home="$rvm_gems_path/${rvm_ruby_string}${rvm_gemset_separator}${rvm_gemset_name}"
|
692
|
+
rvm_ruby_gem_home="$rvm_gems_path/${rvm_ruby_string}${rvm_gemset_separator:-"@"}${rvm_gemset_name}"
|
675
693
|
fi
|
676
694
|
else
|
677
|
-
"$
|
695
|
+
"$rvm_path/scripts/log" "error" "Gemsets can not be used with non rvm controlled rubies (currently)."
|
678
696
|
return 1
|
679
697
|
fi
|
680
698
|
fi
|
@@ -686,7 +704,7 @@ __rvm_gemset_select() {
|
|
686
704
|
|
687
705
|
if [[ ${rvm_gemset_create_on_use_flag:-0} -ne 1 && ${rvm_create_flag:-0} -ne 1 && ${rvm_delete_flag:-0} -ne 1 ]] ; then
|
688
706
|
|
689
|
-
"$
|
707
|
+
"$rvm_path/scripts/log" "error" "Gemset '$rvm_gemset_name' does not exist, rvm gemset create '$rvm_gemset_name' first."
|
690
708
|
|
691
709
|
return 1
|
692
710
|
fi
|
@@ -697,7 +715,7 @@ __rvm_gemset_select() {
|
|
697
715
|
|
698
716
|
if [[ -z "${rvm_ruby_gem_home:-""}" && -n "${rvm_ruby_string:-""}" ]] ; then
|
699
717
|
rvm_ruby_gem_home="$rvm_gems_path/$rvm_ruby_string"
|
700
|
-
rvm_ruby_global_gems_path="$rvm_gems_path/$rvm_ruby_string${rvm_gemset_separator}global"
|
718
|
+
rvm_ruby_global_gems_path="$rvm_gems_path/$rvm_ruby_string${rvm_gemset_separator:-"@"}global"
|
701
719
|
fi
|
702
720
|
|
703
721
|
rvm_ruby_gem_path="$rvm_ruby_gem_home:$rvm_ruby_global_gems_path"
|
@@ -718,7 +736,7 @@ __rvm_gemset_select() {
|
|
718
736
|
# Use a gemset specified by 'rvm_ruby_gem_home'
|
719
737
|
__rvm_gemset_use() {
|
720
738
|
if [[ -z "${rvm_gemset_name:-""}" ]] ; then
|
721
|
-
"$
|
739
|
+
"$rvm_path/scripts/log" "error" "Gemset was not given.\n Usage:\n rvm gemset use <gemsetname>\n"
|
722
740
|
return 1
|
723
741
|
fi
|
724
742
|
|
@@ -727,21 +745,21 @@ __rvm_gemset_use() {
|
|
727
745
|
if [[ ! -d "$rvm_ruby_gem_home" ]] ; then
|
728
746
|
|
729
747
|
if [[ ${rvm_gemset_create_on_use_flag:-0} -eq 1 || ${rvm_create_flag:-0} -eq 1 ]] ; then
|
730
|
-
"$
|
748
|
+
"$rvm_path/scripts/gemsets" create "$rvm_gemset_name"
|
731
749
|
else
|
732
|
-
"$
|
750
|
+
"$rvm_path/scripts/log" "error" "Gemset '$rvm_gemset_name' does not exist, rvm gemset create '$rvm_gemset_name' first."
|
733
751
|
return 1
|
734
752
|
fi
|
735
753
|
fi
|
736
754
|
|
737
755
|
if [[ ${rvm_interactive_flag:-0} -gt 0 && ${rvm_verbose_flag:-1} -ne 0 ]] ; then
|
738
|
-
"$
|
756
|
+
"$rvm_path/scripts/log" "info" "Now using gemset '${rvm_gemset_name:-default}'"
|
739
757
|
fi
|
740
758
|
|
741
|
-
rvm_ruby_gem_home="${GEM_HOME//${rvm_gemset_separator}*}${rvm_gemset_separator}${rvm_gemset_name}"
|
759
|
+
rvm_ruby_gem_home="${GEM_HOME//${rvm_gemset_separator:-"@"}*}${rvm_gemset_separator:-"@"}${rvm_gemset_name}"
|
742
760
|
GEM_HOME="$rvm_ruby_gem_home"
|
743
761
|
BUNDLE_PATH="$rvm_ruby_gem_home"
|
744
|
-
GEM_PATH="$rvm_ruby_gem_home/bin:$(echo "$GEM_HOME" | sed 's/'${rvm_gemset_separator}'.*$//')${rvm_gemset_separator}global/bin"
|
762
|
+
GEM_PATH="$rvm_ruby_gem_home/bin:$(echo "$GEM_HOME" | sed 's/'${rvm_gemset_separator:-"@"}'.*$//')${rvm_gemset_separator:-"@"}global/bin"
|
745
763
|
export rvm_ruby_gem_home GEM_HOME BUNDLE_PATH GEM_PATH
|
746
764
|
|
747
765
|
__rvm_use # Now ensure the selection takes effect for the environment.
|
@@ -752,8 +770,8 @@ __rvm_gemset_use() {
|
|
752
770
|
|
753
771
|
__rvm_gemset_clear() {
|
754
772
|
rvm_gemset_name="" ; shift # TODO: Is this shift necessary???
|
755
|
-
rvm_ruby_gem_home="${GEM_HOME//${rvm_gemset_separator:-
|
756
|
-
rvm_ruby_global_gems_path="$(echo "${GEM_HOME:-""}" | sed 's/'${rvm_gemset_separator}'.*$//')${rvm_gemset_separator}global"
|
773
|
+
rvm_ruby_gem_home="${GEM_HOME//${rvm_gemset_separator:-"@"}*}"
|
774
|
+
rvm_ruby_global_gems_path="$(echo "${GEM_HOME:-""}" | sed 's/'${rvm_gemset_separator:-"@"}'.*$//')${rvm_gemset_separator:-"@"}global"
|
757
775
|
GEM_HOME=$rvm_ruby_gem_home
|
758
776
|
BUNDLE_PATH="$rvm_ruby_gem_home"
|
759
777
|
GEM_PATH="$rvm_ruby_gem_home/bin:$rvm_ruby_global_gems_path/bin"
|