rvm 1.0.6 → 1.0.7
Sign up to get free protection for your applications and to get access to all the features.
- 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/set
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
|
-
source "$
|
3
|
+
source "$rvm_path/scripts/base"
|
4
4
|
|
5
5
|
__rvm_attempt_single_exec() {
|
6
6
|
# Return if we have multiple rubies. or we're not running exec.
|
@@ -37,7 +37,7 @@ __rvm_ruby_do() {
|
|
37
37
|
binary="$(basename $(command -v $binary) 2>/dev/null)"
|
38
38
|
|
39
39
|
else
|
40
|
-
"$
|
40
|
+
"$rvm_path/scripts/log" "warn" "'$binary not found for $rvm_ruby_string' either does not exist or is not executable? :("
|
41
41
|
__rvm_unset_ruby_variables
|
42
42
|
return 1
|
43
43
|
fi
|
@@ -51,11 +51,11 @@ __rvm_ruby_do() {
|
|
51
51
|
# TODO: the else case below should be run if $args =~ /\.rb$/
|
52
52
|
if [[ "ruby" = "$(basename $binary)" && "$rvm_benchmark_flag" -ne 1 ]] ; then
|
53
53
|
|
54
|
-
if "$
|
54
|
+
if "$rvm_path/scripts/match" "$args" "\.rb$" ; then
|
55
55
|
|
56
56
|
if [[ -z "$prefix" ]] ; then prefix="-S" ; fi
|
57
57
|
|
58
|
-
if ! "$
|
58
|
+
if ! "$rvm_path/scripts/match" "$args" "$prefix" ; then
|
59
59
|
args="$prefix $args"
|
60
60
|
fi
|
61
61
|
fi
|
@@ -76,7 +76,7 @@ __rvm_ruby_do() {
|
|
76
76
|
if [[ "$current_env" != "$current_set_ruby" ]]; then
|
77
77
|
current_env="$current_set_ruby ($current_env)"
|
78
78
|
fi
|
79
|
-
"$
|
79
|
+
"$rvm_path/scripts/log" "info" "$current_env: $(ruby -v $rvm_ruby_mode | \tr "\n" ' ')\n"
|
80
80
|
unset current_env
|
81
81
|
fi
|
82
82
|
eval "$rvm_command"
|
@@ -126,7 +126,7 @@ __rvm_yaml() {
|
|
126
126
|
if [[ -n "${ZSH_VERSION:-""}" ]] ; then array_start=1 ; else array_start=0 ; fi
|
127
127
|
for (( index = $array_start ; index < $total + $array_start ; index++ )) ; do
|
128
128
|
if [[ ${rvm_debug_flag:-0} -gt 0 ]] ; then
|
129
|
-
"$
|
129
|
+
"$rvm_path/scripts/log" "debug" "${rubies[$index]}: ${statuses[$index]}"
|
130
130
|
fi
|
131
131
|
yaml="$yaml\n \"${rubies[$index]}\": ${statuses[$index]}"
|
132
132
|
done ; unset index array_start
|
@@ -149,7 +149,7 @@ __rvm_json() {
|
|
149
149
|
|
150
150
|
for (( index = $array_start ; index < $total + $array_start ; index++ )) ; do
|
151
151
|
if [[ ${rvm_debug_flag:-0} -gt 0 ]] ; then
|
152
|
-
"$
|
152
|
+
"$rvm_path/scripts/log" "debug" "${rubies[$index]}: ${statuses[$index]}"
|
153
153
|
fi
|
154
154
|
json="$json\n {\"${rubies[$index]}\": ${statuses[$index]}}"
|
155
155
|
if (( $index + 1 < $total + $array_start )) ; then json="$json, " ; fi
|
@@ -172,13 +172,13 @@ action="${args[0]}"
|
|
172
172
|
args=${args[@]:1}
|
173
173
|
|
174
174
|
if [[ -z "$action" ]] ; then
|
175
|
-
"$
|
175
|
+
"$rvm_path/scripts/log" "error" "Action must be specified."
|
176
176
|
exit 1
|
177
177
|
fi
|
178
178
|
|
179
179
|
if [[ "$action" == "ruby" ]] && echo "$args" | \grep -q "^'--[^[:space:]]*'$" ; then
|
180
|
-
"$
|
181
|
-
"$
|
180
|
+
"$rvm_path/scripts/log" "warn" "You called rvm ruby with the arguments $args which look like use options."
|
181
|
+
"$rvm_path/scripts/log" "warn" "Please note that 'rvm ruby' invokes set operations instead."
|
182
182
|
fi
|
183
183
|
|
184
184
|
rvm_ruby_strings=$(__rvm_expand_ruby_string "$rvm_ruby_strings")
|
@@ -195,6 +195,6 @@ if [[ ! -z "$rvm_summary_flag" ]] ; then __rvm_summary ; fi
|
|
195
195
|
if [[ ! -z "$rvm_yaml_flag" ]] ; then __rvm_yaml ; fi
|
196
196
|
if [[ ! -z "$rvm_json_flag" ]] ; then __rvm_json ; fi
|
197
197
|
|
198
|
-
rvm_hook="after_do" ; source "$
|
198
|
+
rvm_hook="after_do" ; source "$rvm_path/scripts/hook"
|
199
199
|
|
200
200
|
exit ${#errors[*]}
|
data/scripts/snapshot
CHANGED
@@ -3,11 +3,11 @@
|
|
3
3
|
unset GREP_COLOR
|
4
4
|
unset GREP_OPTIONS
|
5
5
|
|
6
|
-
source "$
|
6
|
+
source "$rvm_path/scripts/base"
|
7
7
|
|
8
8
|
__error_on_result() {
|
9
9
|
if [[ "$1" -gt 0 ]]; then
|
10
|
-
"$
|
10
|
+
"$rvm_path/scripts/log" "fail" "$2 - Aborting now."
|
11
11
|
return 0
|
12
12
|
else
|
13
13
|
return 1
|
@@ -27,41 +27,47 @@ snapshot_save() {
|
|
27
27
|
\rm -rf "$snapshot_temp_path"
|
28
28
|
\mkdir -p "$snapshot_temp_path"
|
29
29
|
|
30
|
-
"$
|
30
|
+
"$rvm_path/scripts/log" "info" "Backing up a list of aliases"
|
31
31
|
\cp "$rvm_config_path/alias" "$snapshot_temp_path/"
|
32
32
|
|
33
|
-
"$
|
33
|
+
"$rvm_path/scripts/log" "info" "Backing up your user preferences"
|
34
34
|
\cp "$rvm_config_path/user" "$snapshot_temp_path/"
|
35
35
|
|
36
|
-
"$
|
36
|
+
"$rvm_path/scripts/log" "info" "Backing up your installed packages"
|
37
37
|
sed -e 's/-//' -e 's/^lib//' < "$rvm_config_path/packages" | awk -F= '{print $1}' | sort | uniq > "$snapshot_temp_path/packages"
|
38
38
|
|
39
|
-
"$
|
39
|
+
"$rvm_path/scripts/log" "info" "Backing up all of your gemsets"
|
40
40
|
\mkdir -p "$snapshot_temp_path/gems"
|
41
41
|
|
42
42
|
(
|
43
43
|
builtin cd "$snapshot_temp_path/gems"
|
44
|
-
|
45
|
-
|
46
|
-
|
44
|
+
|
45
|
+
for snapshot_gemset in $("$rvm_path/scripts/list" gemsets strings) ; do
|
46
|
+
|
47
|
+
__rvm_become "$snapshot_gemset" ; result="$?"
|
48
|
+
|
47
49
|
__error_on_result "$result" "Error becoming ruby $snapshot_gemset" && return "$result"
|
48
|
-
|
49
|
-
result="$?"
|
50
|
+
|
51
|
+
"$rvm_path/scripts/gemsets" export "${snapshot_gemset}.gems" >/dev/null ; result="$?"
|
52
|
+
|
50
53
|
__error_on_result "$result" "Error exporting gemset contents for $snapshot_gemset" && return "$result"
|
54
|
+
|
51
55
|
\mkdir -p "./$snapshot_gemset/"
|
56
|
+
|
52
57
|
[[ -d "$GEM_HOME/cache/" ]] && \cp -R "$GEM_HOME/cache/" "./$snapshot_gemset/"
|
53
|
-
|
58
|
+
|
59
|
+
done
|
54
60
|
)
|
55
61
|
|
56
|
-
"$
|
62
|
+
"$rvm_path/scripts/log" "info" "Backing up all of your installed rubies"
|
57
63
|
echo '#!/usr/bin/env bash -e' > "$snapshot_temp_path/install-rubies.sh"
|
58
|
-
echo "source \"\$
|
64
|
+
echo "source \"\$rvm_path/scripts/rvm\" || true" >> "$snapshot_temp_path/install-rubies.sh"
|
59
65
|
local snapshot_ruby_name_file="$rvm_tmp_path/$$-rubies"
|
60
66
|
local snapshot_alias_name_file="$rvm_tmp_path/$$-aliases"
|
61
67
|
local snapshot_installable_file="$rvm_tmp_path/$$-installable"
|
62
68
|
|
63
|
-
"$
|
64
|
-
"$
|
69
|
+
"$rvm_path/scripts/alias" list | awk -F ' => ' '{print $1}' | sort | uniq 2>/dev/null > "$snapshot_alias_name_file"
|
70
|
+
"$rvm_path/scripts/list" strings | \tr ' ' '\n' | sort | uniq > "$snapshot_ruby_name_file"
|
65
71
|
comm -2 -3 "$snapshot_ruby_name_file" "$snapshot_alias_name_file" > "$snapshot_installable_file"
|
66
72
|
\rm -rf "$snapshot_ruby_name_file" "$snapshot_alias_name_file"
|
67
73
|
|
@@ -80,7 +86,7 @@ snapshot_save() {
|
|
80
86
|
|
81
87
|
\rm -rf "$snapshot_installable_file"
|
82
88
|
|
83
|
-
"$
|
89
|
+
"$rvm_path/scripts/log" "info" "Compressing snapshotting"
|
84
90
|
local destination_path="$PWD"
|
85
91
|
(
|
86
92
|
builtin cd "$snapshot_temp_path"
|
@@ -90,10 +96,10 @@ snapshot_save() {
|
|
90
96
|
__error_on_result "$result" "Error creating archive $destination_path/$1.tar.gz" && return "$result"
|
91
97
|
)
|
92
98
|
|
93
|
-
"$
|
99
|
+
"$rvm_path/scripts/log" "info" "Cleaning up"
|
94
100
|
\rm -rf "$snapshot_temp_path"
|
95
101
|
|
96
|
-
"$
|
102
|
+
"$rvm_path/scripts/log" "info" "Snapshot complete"
|
97
103
|
}
|
98
104
|
|
99
105
|
snapshot_load() {
|
@@ -115,7 +121,7 @@ snapshot_load() {
|
|
115
121
|
\rm -rf "$snapshot_temp_path"
|
116
122
|
\mkdir -p "$snapshot_temp_path"
|
117
123
|
|
118
|
-
"$
|
124
|
+
"$rvm_path/scripts/log" "info" "Extracting snapshot"
|
119
125
|
(
|
120
126
|
builtin cd "$snapshot_temp_path"
|
121
127
|
tar xzf "$snapshot_archive"
|
@@ -123,59 +129,72 @@ snapshot_load() {
|
|
123
129
|
__error_on_result "$result" "Error extracting the archive '$snapshot_archive'" && return "$result"
|
124
130
|
)
|
125
131
|
|
126
|
-
"$
|
132
|
+
"$rvm_path/scripts/log" "info" "Restoring user settings"
|
127
133
|
\cp -f "$snapshot_temp_path/user" "$rvm_config_path/user"
|
128
134
|
|
129
|
-
"$
|
135
|
+
"$rvm_path/scripts/log" "info" "Installing rvm-managed packages"
|
130
136
|
for snapshot_package in $(cat "$snapshot_temp_path/packages"); do
|
131
|
-
"$
|
137
|
+
"$rvm_path/scripts/package" install "$snapshot_package"
|
132
138
|
result="$?"
|
133
139
|
__error_on_result "$result" "Error installing package '$snapshot_package'" && return "$result"
|
134
140
|
done; unset snapshot_package
|
135
141
|
|
136
|
-
"$
|
142
|
+
"$rvm_path/scripts/log" "info" "Installing rubies"
|
137
143
|
chmod +x "$snapshot_temp_path/install-rubies.sh"
|
138
144
|
"$snapshot_temp_path/install-rubies.sh"
|
139
145
|
result="$?"
|
140
146
|
__error_on_result "$result" "Error importing rubies." && return "$result"
|
141
147
|
|
142
148
|
export rvm_create_flag=1
|
143
|
-
"$
|
149
|
+
"$rvm_path/scripts/log" "info" "Setting up gemsets"
|
144
150
|
(
|
145
151
|
builtin cd "$snapshot_temp_path/gems"
|
146
|
-
|
152
|
+
|
153
|
+
gems=($(find . -mindepth 0 -maxdepth 0 -type f -iname '*.gems' | sed 's/.gems$//'))
|
154
|
+
|
155
|
+
for snapshot_gemset in "${gems[@]//.\/}" ; do
|
156
|
+
|
147
157
|
__rvm_become "$snapshot_gemset"
|
148
158
|
result="$?"
|
149
|
-
|
159
|
+
|
160
|
+
__error_on_result "$result" \
|
161
|
+
"Error becoming '$snapshot_gemset'" && return "$result"
|
162
|
+
|
150
163
|
mkdir -p "$GEM_HOME/cache/"
|
164
|
+
|
151
165
|
cp -Rf "$snapshot_gemset/" "$GEM_HOME/cache/"
|
152
166
|
result="$?"
|
153
|
-
|
154
|
-
|
167
|
+
|
168
|
+
__error_on_result "$result" \
|
169
|
+
"Error copying across cache for $snapshot_gemset" && return "$result"
|
170
|
+
|
171
|
+
"$rvm_path/scripts/gemsets" import "$snapshot_gemset" >/dev/null 2>&1
|
155
172
|
result="$?"
|
156
|
-
|
173
|
+
|
174
|
+
__error_on_result "$result" \
|
175
|
+
"Error importing gemset for $snapshot_gemset" && return "$result"
|
157
176
|
done
|
158
177
|
)
|
159
178
|
|
160
|
-
"$
|
179
|
+
"$rvm_path/scripts/log" "info" "Restoring aliases"
|
161
180
|
while read -r package_info; do
|
162
181
|
# Note: this assumes an '=' int the input...
|
163
182
|
local alias_name="${package_info/=*}"
|
164
183
|
local alias_ruby="${package_info/*=}"
|
165
184
|
|
166
|
-
"$
|
185
|
+
"$rvm_path/scripts/alias" create "$alias_name" "$alias_ruby"
|
167
186
|
if [[ "$alias_name" = "default" ]]; then
|
168
|
-
(source "$
|
187
|
+
(source "$rvm_path/scripts/rvm" && rvm use "$alias_ruby" --default) >/dev/null 2>&1
|
169
188
|
result="$?"
|
170
189
|
__error_on_result "$result" "Error setting default to $alias_ruby" && return "$result"
|
171
190
|
fi
|
172
191
|
done < "$snapshot_temp_path/alias"
|
173
192
|
unset package_info
|
174
193
|
|
175
|
-
"$
|
194
|
+
"$rvm_path/scripts/log" "info" "Cleaning up load process"
|
176
195
|
\rm -rf "$snapshot_temp_path"
|
177
196
|
|
178
|
-
"$
|
197
|
+
"$rvm_path/scripts/log" "info" "Loaded snapshot from $(basename "$snapshot_archive")"
|
179
198
|
}
|
180
199
|
|
181
200
|
snapshot_usage() {
|
data/scripts/tools
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
|
3
|
-
source "$
|
3
|
+
source "$rvm_path/scripts/base"
|
4
4
|
|
5
5
|
usage() {
|
6
6
|
echo "Usage: rvm tools {identifier,path-identifier,strings}" 1>&2
|
@@ -18,7 +18,7 @@ tools_path_identifier() {
|
|
18
18
|
return 1
|
19
19
|
fi
|
20
20
|
|
21
|
-
source "$
|
21
|
+
source "$rvm_path/scripts/rvm"
|
22
22
|
builtin cd "$1"
|
23
23
|
rvm_promptless=1 __rvm_project_rvmrc
|
24
24
|
rvmrc_result="$?"
|
data/scripts/update
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
|