Skip to content

Installing ruby gems in your home directory

I found it hard to find good instructions for installing ruby gems as a non-root user without installing the gem package locally as well. Here’s what I figured out; hopefully this will save someone else some time in the future:

Make a directory for gem installation:

$> mkdir ~/.gems

Set up your .gemrc for gem install-time configuration:

$> cat << EOF > ~/.gemrc
gemhome: $HOME/gems
gempath:
- $HOME/gems
- /usr/lib/ruby/gems/1.8
EOF

Set up some environment variables for run-time:

$> cat << EOF >> ~/.bashrc
export GEM_HOME=$HOME/gems
export GEM_PATH=$HOME/gems:/usr/lib/ruby/gems/1.8/
export PATH=$PATH:$HOME/gems/bin
EOF

Source your bashrc and you’re all set.

One Comment

  1. Brenton wrote:

    For development you also have the option to build ruby and install it to your homedir. The gem command will install the gems wherever the ruby interpreter that runs it is installed.

    At least for me personally that has helped when I run multiple versions of ruby in development but use RPMs to lay down everything system wide. Whenever I want to use a particular ruby version for development I just set my PATH appropriately.

    Tuesday, May 13, 2008 at 11:16 am | Permalink