2017/05/22 追記:この記事は古いので、今からRustをはじめられる方はこちらの記事にあるrustupをご利用ください!
プログラミング言語 Rust もラピッドリリースになり、コンパイラが頻繁にアップデートされるようになりました。homebrew やインストーラーではなく、multirust というツールを使ってインストールしておくと、アップデートを簡単に行えるようになって便利です。
公式サイトはこちら:brson/multirust
multirust とは
複数バージョンの Rust をインストール / 管理できるツールで、以下のような特徴を持ちます。
- オフィシャルに配布されている Rust バイナリをインストールできる
- ディレクトリごとに利用するツールチェーンのバージョンを管理できる
- nightly, beta, stable のリリースチャンネルを指定して、インストールや更新が行える
- 更新の自動確認
- 公式のアーカイブを利用することによって、時期を指定して nightly をインストールできる
- バージョンを指定してのインストール
- インストールするツールチェーンのカスタマイズ
- Cargo のデータの分離によるインストールごとに独立したライブラリ管理
- ダウンロードしたバイナリのハッシュ値と署名の確認
- 分割ダウンロードと、レジューム
- bash, curl と一般的な UNIX のツールがあれば動作可能
multirust を使ったインストール
curl を使ってダウンロードしたシェルスクリプトを実行するだけでインストールできます。
実際のコマンド入力例は以下のとおり:
% curl -sf https://raw.githubusercontent.com/brson/multirust/master/blastoff.sh | sh # step 1
プロジェクトで利用するリリースチャンネルの変更
override コマンドで利用する Rust のリリースチャンネルを変更できます。この設定は、コマンドを実行したディレクトリ以下で有効です。
設定されたリリースチャンネルのツールがインストールされていない場合は、ツールのダウンロードとインストールもあわせて行われます。
% mkdir project_with_nightly
% cd project_with_nightly
% multirust override nightly
multirust: installing toolchain 'nightly'
rustup: gpg available. signatures will be verified
rustup: downloading manifest for 'nightly'
(後略)
特定の日時の nightly をインストールしたい場合は、次のように日付をつけて override コマンドを実行します。
% multirust override nightly-2016-04-07
stable なら、利用するバージョンを指定できます。
% multirust override 1.0.0
コンパイラのバージョンアップ
update コマンドを利用します。
% multirust update
multirust: updating existing install for 'stable'
rustup: gpg available. signatures will be verified
rustup: downloading manifest for 'stable'
rustup: downloading toolchain for 'stable'
rustup: 'stable' is already up to date
(後略)
ただし上記のコマンドでは、全てのリリースチャンネルのものをアップデートします。stable だけアップデートするなら、次のようにリリースチャンネルを指定して実行します。
% multirust update stable
まとめ
multirust を使えば、コマンド 1 つで Rust 開発環境が手に入り、しかも開発に利用するコンパイラのバージョンを固定することも可能です。
nightly ユーザにとっては、更新が簡単に行える点も嬉しいツールです。わざわざサイトへ行かなくても、update コマンドで更新できるのは、楽すぎます。
multirust で楽しい Rustitian ライフを!