Skip to content
An rbenv plugin that safely sets global and per-project environment variables
Find file
Pull request Compare This branch is 1 commit ahead, 20 commits behind rbenv:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This is a plugin for rbenv that lets you set global and project-specific environment variables before spawning Ruby processes.


To install rbenv-vars, clone this repository into your ~/.rbenv/plugins directory. (You'll need a recent version of rbenv that supports plugin bundles.)

$ mkdir -p ~/.rbenv/plugins
$ cd ~/.rbenv/plugins
$ git clone


Define environment variables in an .rbenv-vars file in your project, one variable per line, in the format VAR=value. For example:


You can perform variable substitution with the traditional $ syntax. For example, to append to GEM_PATH:


Spaces are allowed in values; quoting is not necessary. Expansion and command substitution are not allowed. Lines beginning with # or any lines not in the format VAR=value will be ignored.

Variables specified in the ~/.rbenv/vars file will be set first. Then current version specific variables in ~/.rbenv/versions/versionname/vars. Then variables specified in .rbenv-vars files in any parent directories of the current directory will be set. Variables from the .rbenv-vars file in the current directory are set last.

Use the rbenv vars command to print all environment variables in the order they'll be set.


© 2011 Sam Stephenson. Released under the MIT license. See LICENSE for details.

Something went wrong with that request. Please try again.