Ruby bietet das Tool gem
um Gems zu installieren, diese können global installiert werden (hierfür werden Rootrechte benötigt) oder innerhalb des Homedirs. Dazu muss man die
/etc/gemrc
mit folgenden Inhalt erstellen:
gem: --user-install
In größeren Ruby Projekten, die aus vielen Gems bestehen, werden diese mit dem Tool Bundler
verwaltet. Bundler bietet die Möglichkeit benötigte Gems in einem Gemfile zu definieren inkl benötigter Version. Bundler ignoriert leider die /etc/gemrc
beim installieren. Um mit Bundler ebenfalls innerhalb des Homedirs gems zu installieren kann man folgenden Befehl nutzen:
bundle install --path ~/.gem
“–user-install” scheint nicht zu verhindern, dass Packages in einem systemweiten Cache im Installatioonsverzeichnis landen, in dem man normalerweise keine Schreibrechte haben sollte. In meinen Fällen muss ich tatsächlich “–install-dir C:\Users\[…]\.gem\ruby\2.6.0” mit einem Benutzer spezifischen Pfad angeben.