-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathinit_rbenv
executable file
·76 lines (61 loc) · 2.55 KB
/
init_rbenv
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
#!/bin/bash
BUNDLER_VERSION="1.11.2"
export RBENV_VERSION=$(cat .ruby-version)
export RBENV_ROOT=$HOME/.rbenv
unset GEM_PATH
unset GEM_HOME
if [ ! -d $RBENV_ROOT ]; then
echo "Installing rbenv."
git clone git://github.com/sstephenson/rbenv.git $RBENV_ROOT
fi
if [ ! -d $RBENV_ROOT/plugins/rbenv-update ]; then
echo "Installing rbenv-update plugin."
git clone https://github.com/rkh/rbenv-update.git $RBENV_ROOT/plugins/rbenv-update
fi
if [ ! -d $RBENV_ROOT/plugins/ruby-build ]; then
echo "Installing ruby-build plugin."
git clone https://github.com/sstephenson/ruby-build.git $RBENV_ROOT/plugins/ruby-build
fi
if [ ! -d $RBENV_ROOT/plugins/rbenv-gemset ]; then
echo "Installing rbenv-gemset plugin."
git clone https://github.com/jf/rbenv-gemset.git $RBENV_ROOT/plugins/rbenv-gemset
fi
if [ ! -d $RBENV_ROOT/plugins/rbenv-vars ]; then
echo "Installing rbenv-vars plugin."
git clone https://github.com/sstephenson/rbenv-vars.git $RBENV_ROOT/plugins/rbenv-vars
fi
if [ ! -d $RBENV_ROOT/versions/$RBENV_VERSION ]; then
echo "Installing ruby ${RBENV_VERSION}."
$RBENV_ROOT/bin/rbenv update
$RBENV_ROOT/bin/rbenv install $RBENV_VERSION
if [[ $RBENV_VERSION =~ "jruby" ]]; then
# should be the same as pristine since this is a new install, but `gem pristine` hits file permissions errors the first time
$RBENV_ROOT/bin/rbenv exec gem install jruby-launcher
fi
echo "done"
elif [[ ("true" = "${RBENV_UPDATE:-false}") || ($(uname -a) =~ Darwin) ]]; then
echo "Updating rbenv..."
$RBENV_ROOT/bin/rbenv update
else
echo "Environment up to date, ruby version: $RBENV_VERSION"
fi
if ! (echo $PATH | grep -F "$RBENV_ROOT" > /dev/null 2>&1 && grep -F 'export PATH="$HOME/.rbenv' $HOME/.bash_profile 2>&1 > /dev/null); then
echo "Adding rbenv to PATH"
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> $HOME/.bash_profile
export PATH="$RBENV_ROOT/bin:$PATH"
fi
if ! (type rbenv > /dev/null 2>&1 && grep -F 'eval "$(rbenv init -)"' $HOME/.bash_profile 2>&1 > /dev/null); then
echo "Initializing rbenv in your .bash_profile"
echo 'eval "$(rbenv init -)"' >> $HOME/.bash_profile
eval "$(rbenv init -)"
fi
if ! ($RBENV_ROOT/shims/bundle --version 2> /dev/null | grep -F "$BUNDLER_VERSION" > /dev/null 2>&1); then
echo "installing bundler $BUNDLER_VERSION"
cmd="$RBENV_ROOT/bin/rbenv exec gem install --no-ri --no-rdoc bundler -v $BUNDLER_VERSION"
echo "executing: $cmd"
$cmd
echo "done, result: $?"
fi
unset BUNDLER_VERSION
$RBENV_ROOT/bin/rbenv exec ruby -S bundle install
$RBENV_ROOT/bin/rbenv rehash