Skip to content

Instantly share code, notes, and snippets.

@parkr
Last active December 10, 2015 14:50
Show Gist options
  • Save parkr/4450392 to your computer and use it in GitHub Desktop.
Save parkr/4450392 to your computer and use it in GitHub Desktop.
#!/bin/bash
set -e # exit on error
### README
# * built for Ubuntu (Lucid Lynx)
# * uses GIT via SSH because of !@#$% proxy at work
# * installs your desired ruby version (1.9.2-p290 per default) using rbenv
# ** including openssl (needed by bundler)
# ** including sqlite (probably needed for rails apps)
#
# Before you start:
# * put ssh-keys in place
# * $ ssh [email protected]
# * If you're behind a proxy, be sure to set $http_proxy etc!
#
# After the Script has run:
# * reload your .profile
### /README
### CONFIG
# Ruby Version to install
RBVER='1.9.3-p362'
### /CONFIG
PROFILE=~/.profile
# update system, just in case
sudo apt-get update
#sudo apt-get full-upgrade
# install some dependancies
sudo apt-get install -y \
build-essential zlib1g-dev \
libssl-dev openssl \
libreadline-dev \
sqlite3 libsqlite3-dev \
libxslt-dev libxml2-dev \
curl wget git-core
# build-essential zlib1g-dev required to install ruby
# libssl-dev openssl required for openssl extension
# libreadline-dev required for IRB
# sqlite3 libsqlite3-dev required for sqlite gem
# libxslt-dev libxml2-dev required for nokogiri gem
# curl wget git-core can i haz tools?
cd
### Install rbenv
test -d ~/.rbenv || git clone [email protected]:sstephenson/rbenv.git ~/.rbenv
# modify $PATH and autoload rbenv
grep 'rbenv/bin' $PROFILE &>/dev/null || echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> $PROFILE
grep 'rbenv init' $PROFILE &>/dev/null || echo 'eval "$(rbenv init -)"' >> $PROFILE
mkdir -p ~/.rbenv/plugins
# reload shell
source $PROFILE
### Install ruby-build
test -d ~/.rbenv/plugins/ruby-build || git clone [email protected]:sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
### Install rbenv-gemset
test -d ~/.rbenv/plugins/rbenv-gemset || git clone [email protected]:jamis/rbenv-gemset.git ~/.rbenv/plugins/rbenv-gemset
### Install Ruby
rbenv install $RBVER --with-openssl-dir=/usr/local
# reload binaries
rbenv rehash
# set as default version
rbenv global $RBVER
ruby -v
# set some defaults
test -s ~/.gemrc || echo 'gem: --no-rdoc --no-ri' >> ~/.gemrc
echo 'Here is your ~/.gemrc:'
cat ~/.gemrc
echo '=== end of .gemrc ==='
# install bundler
gem install bundler
rbenv rehash
grep 'BUNDLE_WITHOUT' $PROFILE &>/dev/null || echo 'export BUNDLE_WITHOUT=production' >> $PROFILE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment