お手伝いいただける、または開発者の一員になりたい場合は、お手伝いください。RVM関連プロジェクトの詳細については、RVM Github組織でご覧いただけます。
Rubyインストール時のGemセットの初期化
Rubyを新しくインストールすると、RVMは2つのGemセット(デフォルトの空のGemセットとグローバルのGemセット)を作成するだけでなく、どのGemをインストールするかを決めるために、ユーザーが編集可能な一連のファイルも使用します。
~/.rvm/gemsetsで実行されるRVMは、インストールされるRuby文字列に基づいたツリー階層を使用してglobal.gemsとdefault.gemsを検索します。ree-1.8.7-p2010.02の例を使用すると、RVMは次のファイルをチェック(およびそこからインポート)します。
- ~/.rvm/gemsets/ree/1.8.7/p2010.02/global.gems
- ~/.rvm/gemsets/ree/1.8.7/p2010.02/default.gems
- ~/.rvm/gemsets/ree/1.8.7/global.gems
- ~/.rvm/gemsets/ree/1.8.7/default.gems
- ~/.rvm/gemsets/ree/global.gems
- ~/.rvm/gemsets/ree/default.gems
- ~/.rvm/gemsets/global.gems
- ~/.rvm/gemsets/default.gems
たとえば、次の2行を追加して~/.rvm/gemsets/global.gemsを編集した場合
bundler awesome_print
新しいRubyをインストールするたびに、これらの2つのGemがグローバルのGemセットにインストールされます。
デフォルトのGemセットまたはグローバルのGemセットを使用すると、RVMに特定バージョンの特定のGemを含ませることもできます。方法は次のとおりです。
bundler -v~>1.0.0 awesome_print hirb -v0.4.5
デフォルトでは、RVMはこれらのGemセットを使用して共通ライブラリ(rakeなど、jrubyの場合はjruby-opensslなど)をインストールします。
警告
default.gemsとglobal.gemsのファイルは通常、RVMの更新中(rvm get ...)に上書きされます。
ただし、after_installフックを使用するか、インストール/アップグレード中に--with-default-gems/--with-gemsフラグで上書きすることで、この動作をオーバーライドすることが可能です。