/
rvm
executable file
·124 lines (69 loc) · 2.61 KB
/
rvm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#!/usr/bin/env bash
# rvm : Ruby enVironment Manager
# http://rvm.beginrescueend.com
# http://github.com/wayneeseguin/rvm
\grep -q '^rvm ()' < <( declare -f ) # Is RVM is a shell function?
if [[ $? -gt 0 || ${rvm_reload_flag:-0} -eq 1 ]] ; then
if [[ ${rvm_ignore_rvmrc:-0} -eq 0 ]]; then
for rvmrc in /etc/rvmrc "$HOME/.rvmrc" ; do
if [[ -f "$rvmrc" ]] ; then
if \grep -q '^\s*rvm .*$' $rvmrc ; then
printf "\nError: $rvmrc is for rvm settings only.\nrvm CLI may NOT be called from within $rvmrc. \nSkipping the loading of $rvmrc"
return 1
else
source "$rvmrc"
fi
fi
done
fi
# Set the default sandboxed value.
if [[ -z "$rvm_selfcontained" ]]; then
if [[ "root" = "$(whoami)" || -n "$rvm_prefix" && "$rvm_prefix" != "$HOME"/* ]]; then
rvm_selfcontained=0
else
rvm_selfcontained=1
fi
fi
if [[ -z "$rvm_prefix" ]] ; then
if [[ "$rvm_selfcontained" = "0" ]] ; then
rvm_prefix="/usr/local/"
else
rvm_prefix="$HOME/."
fi
fi
# Fix rvm_prefix changes.
echo "$rvm_prefix" | \grep -vq '\(\/\|\.\)$' && [[ -d "$rvm_prefix/rvm/scripts" ]]
rvm_prefix_needs_trailing_slash="$?"
if [[ "$rvm_prefix" = "/usr/local" || "$rvm_prefix_needs_trailing_slash" = "0" ]]; then
rvm_prefix="$rvm_prefix/"
fi
if [[ -z "$rvm_path" ]] ; then
rvm_path="${rvm_prefix}rvm"
fi
if [[ -d "$rvm_path" ]] ; then
for script in array utility initialize version selector cli cd override_gem ; do
if [[ -f "$rvm_path/scripts/$script" ]] ; then
source "$rvm_path/scripts/$script"
else
"$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."
fi
done
rvm_version="$(awk '/:/{printf $NF"."}' "$rvm_path/lib/VERSION.yml")"
export rvm_version="${rvm_version/%.}"
alias rvm-restart="source '${rvm_path}/scripts/rvm'"
if ! command -v ruby >/dev/null 2>&1 || command -v ruby | \grep -v rvm >/dev/null ; then
if [[ -s "$rvm_path/environments/default" ]] ; then
source "$rvm_path/environments/default"
fi
fi
# Makes sure rvm_bin_path is in PATH atleast once.
__rvm_conditionally_add_bin_path
else
printf "\n\$rvm_path is not set. rvm cannot load."
fi
unset rvm_prefix_needs_trailing_slash rvm_bin_path rvm_man_path rvm_rc_files rvm_gems_path rvm_gems_cache_path rvm_interactive_flag rvm_gems_path rvm_project_rvmrc_default rvm_gemset_separator
fi
if [[ ${rvm_interactive_flag:-0} -gt 0 ]]; then
cd .
fi