2013-04-16 8 views
13

前回私はRuby on RailsでWeb開発を行う方法を学びたいと思っていましたが、私はそのために自分のArch GNU/Linuxマシンを使用しています。 Archのポリシーでは、通常のシステム全体の場所ではなく、ユーザーディレクトリに宝石をインストールする必要があります。しかし、これはbundleer(システム全体に宝石をインストールしようとする)のデフォルトの動作と矛盾します。だから私がrails new fooを実行するたびに、バンドラは私に私のrootパスワードを入力するように頼みます。ユーザーのホームディレクトリにgemをインストールするように強制する

Railsで必要とされる宝石を私のホームディレクトリにインストールするようにバンドラに強制します。私はbundle install --path .bundleを実行しようとしましたが、Railsのすべての宝石をダウンロードしてインストールします。もう1回は明らかに何もしたくありません。

どうすればいいですか?

更新:最後に、bundle install --path ~/.gemを実行して、望ましい効果を得ました。

+0

なぜシステム全体にインストールされているすべてのgemを削除して、 '.bundle'でそれらを再インストールできないのですか? –

答えて

8

環境変数$BUNDLE_PATHまたは$GEM_HOMEを設定できます。 Bundlerはそれらを使用してあなたの宝石をそこにインストールします。 --path my_pathを指定すると、Bundlerは将来のインストールでこの値を記憶します。

[...]しかし、私がやりたいことは明らかにすべてのRailsの宝石をダウンロードしてインストールします。

キャッシュされたバージョンの宝石を使用する場合は、--localを使用してください。

関連する問題