Skip to content
Sudo plugin for rbenv
Shell
Latest commit f5776e2 May 12, 2014 @dcarley Merge pull request #5 from whitepages/pass_rbenv_version
Pass RBENV_VERSION from parent shell
Failed to load latest commit information.
bin Pass RBENV_VERSION from parent shell Mar 25, 2013
README.md README.md: replace 'clone' command to 'git clone' Jun 2, 2012

README.md

rbenv-sudo

rbenv-sudo is a plugin for rbenv that allows you to run rbenv-provided Rubies and Gems from within a sudo session.

Implementation

It does so by prepending rbenv's bin/ and shims/ directories to a hardcoded representation of root's $PATH. It differs from rvmsudo in that it doesn't pass your present $PATH or any other environment variables over to the sudo session, in the hope of damage limitation.

It will function with the common sudo configuration of:

Defaults env_reset, secure_path

rbenv-sudo should still be used with some caution. Bear in mind that any Rubies, Gems or other binary shims, could maliciously take precedence over system binaries of the same name.

Installation

  1. Setup rbenv
  2. Make sure you have a plugins directory:

    mkdir ~/.rbenv/plugins
    
  3. Clone rbenv-sudo into the plugins directory:

    git clone git://github.com/dcarley/rbenv-sudo.git ~/.rbenv/plugins/rbenv-sudo
    

Usage

Prefix your use of sudo with the rbenv command:

$ rbenv sudo chef-solo --version
Chef: 0.10.8
$ rbenv sudo ruby --version
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
$ rbenv sudo ruby -e "puts Process.uid"
0

License

This code is provided under the MIT license.

Something went wrong with that request. Please try again.