Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Gem wrappers

Gem Version Code Climate Coverage Status Build Status Dependency Status Documentation

Create gem wrappers for easy use of gems in cron and other system locations.


This gem should be available in RVM 1.25+, to install manually:

gem install gem-wrappers

Configuration / Defaults

In ~/.gemrc you can overwrite this defaults:

wrappers_path: GEM_HOME/wrappers
wrappers_environment_file: GEM_HOME/environment
wrappers_path_take: 1

It is not yet possible to put variables in the configuration, only relative and full paths will work, open a ticket if you need variables.

Generating wrappers

By default wrappers are installed when a gem is installed, to rerun the process for all gems in GEM_HOME use:

gem wrappers regenerate

wrappers will be generated in $GEM_HOME/wrappers/.


Install popular http server unicorn:

gem install gem-wrappers # assuming it was not installed already
gem install unicorn

The unicorn wrapper is located in $GEM_HOME/wrappers:

gem wrappers show unicorn

This script will make sure proper environment is available.

Generating scripts wrappers

It is possible to generate wrappers for custom scripts:

gem wrappers /path/to/script

a wrapper $GEM_HOME/wrappers/script will be generated.

Showing current configuration

To see paths that are used by gem run:

gem wrappers

Environment file

User can provide his own environment file, in case it is not available during generating wrappers it will be created using this template:

export PATH="<%= path.join(":") %>:$PATH"
export GEM_PATH="<%= gem_path.join(":") %>"
export GEM_HOME="<%= gem_home %>"

The path elements are calculated using this algorithm:

ENV['PATH'].split(":").take(Gem.path.size + path_take)


Create gem wrappers for easy use of gems in cron and other system locations.



Sponsor this project

Learn more about GitHub Sponsors


You can’t perform that action at this time.