1

現在の環境 (企業プロキシを含む) では、何らかの理由で CURL または WGET を使用して RVM をインストールできません。これらのユーティリティを使用せずにソースから RVM をインストールする別の方法はありますか? 私が行ったすべてのWeb検索は、「カール」方法を返します。

何か案は?

4

2 に答える 2

2

rvm スクリプトを変更することはお勧めできません

寝ようとしている間、あなたの質問/私の答えについて考えていました...そして、あなたに別の答えを書かずに目を閉じることができませんでした. rvm インストール スクリプトをハッキングすることは、実際にすべきことではありません。Rvm はどこでも curl を使用します (インストール、Ruby のダウンロード、更新など)。さらに、gem など、さらに多くのものをダウンロードする必要があります。すべてのスクリプトですべての curl-call を置き換えることは維持できません。

提案された解決策

rvm の良いところは、すべてのデータが~/.rvmディレクトリに保存されることです。これを考慮して、開発用コンピューターと可能な限り類似した(同じ OS、同じ OS バージョン、同じライブラリ)リモート コンピューター (または VM) に rvm をインストールできます。必要なルビー、ジェムセット、ジェムをすべてインストールします。次に、圧縮された~/.rvmディレクトリを開発用コンピューターに移動し、解凍し~/.rvmます。

することを忘れないでください

echo "source $HOME/.rvm/scripts/rvm" >> ~/.bash_profile

bashのロード中にrvmをソースにします。

gem や ruby​​ のバージョンを更新またはインストールする必要がある場合は、リモート コンピューターで作業を行い、~/.rvmもう一度コピーしてください。

このセットアップでの私の経験

私はこのセットアップを(CIサーバーで自動化されていますが)、同様の邪悪な企業ネットワークにある実稼働環境で2年間使用しています。gem/rubies の変更は必要以上に困難ですが、インターネット接続がなくても機能します。

編集:このセットアップでの私の経験についての段落を追加しました

于 2013-04-22T23:33:51.680 に答える
0

rvm インストール スクリプトはこちらにあります。あなたはできる

  1. ダウンロードする
  2. curl が使われている部分を修正する
  3. 手動でダウンロードしたファイルを参照するスクリプトを実行します

1.ダウンロード

このファイルを にダウンロードします/tmp/rvm-installer次に、 rvm.tar.gzファイルをダウンロードします。/tmp/rvm-1.19.6.tar.gz

2. ファイルを変更する

148 行目で function が開始されますfetch_version。次の関数に置き換えます。

fetch_version()
{
    echo '1.19.6' # the current version, as of writing this
}

161 行目 ( 内install_release) でget_and_unpack関数が呼び出されます。関数呼び出しを次のように置き換えます。

get_and_unpack \
  /tmp/rvm-${_version}.tar.gz \
  rvm-${_version}.tar.gz

212 行目 ( 内get_and_unpack) で置き換えます

__rvm_curl ${_url} -o ${rvm_archives_path}/${_file} ||

と:

mv ${_url} ${rvm_archives_path}/${_file} ||

3.最後にrvmをインストールします

cd /tmp
cat rvm-installer | bash -s -- --version latest --autolibs=enabled

免責事項: これはまだハックです。rvm をインストールしますが、更新についてはわかりません (ここで rvm は再度 curl を使用します)。幸運を :)

于 2013-04-22T22:20:05.790 に答える