What's the difference between GEM_HOME and GEM_PATH?

Michiel de Mare picture Michiel de Mare · Jun 30, 2012 · Viewed 38.7k times · Source

RubyGems is a package manager for the Ruby programming language that provides a standard format for distributing Ruby programs and libraries (in a self-contained format called a "gem"), a tool designed to easily manage the installation of gems, and a server for distributing them. It is analogous to EasyInstall for the Python programming language. RubyGems is now part of the standard library from Ruby version 1.9.

That said, what's the difference between GEM_HOME and GEM_PATH?

Answer

Michiel de Mare picture Michiel de Mare · Jun 30, 2012

GEM_PATH provides the locations (there may be several) where gems can be found.

GEM_HOME is where gems will be installed (by default).

(Therefore GEM_PATH should include GEM_HOME).