nがひとつ多い。

えぬなおの技術的なことを書いていくとこ。

【Rust】nightlyでrlsなどの開発ツールがインストール出来ない時にする事。

Rustのバージョンには。

stable beta nightly という三種類があり、nightly は最新の開発版で、stable がリリース版です。beta では nightly でのテストが終わりリリースに向けた機能が利用できます。普通の感覚では、 stable を皆手に取るでしょうが、例えばvscoderusty code の依存モジュールの racernightly にしか今現在対応していません。

marketplace.visualstudio.com

nightlyインストールで何で困るのか?

例えば無邪気に、 nightly をインストールをし、

$ rustup install nightly
$ rustup default nightly

vsodeのrlsプラグインを入れようとします。

marketplace.visualstudio.com

$ rustup component add rls-preview
error: component 'rls-preview' for 'x86_64-pc-windows-msvc' is unavailable for download

おわた・・・・・。

なんでこんなことが起きるのか?

一番最初に書いた通り、 nightly は常に(そう、この年末年始でさえ)開発されており、処理系とそれに依存する開発モジュールも例に漏れません。開発途中でビルドがこけていると、 rustup でインストール出来ないようになっております。

どうするか?

ここにたどり着くのに半日かかったぞKS・・・・! 各ディストリやOSごとの状態がわかります。 OSXx86なら、

Rustup packages availability on x86_64-apple-darwin

ここでみて、使う開発ツールがビルド成功しているバージョンをインストールしてください。

直近だと、 2018-12-27 では rls がビルド成功していて良さそうですね。

$ rustup install nightly-2018-12-27
$ rustup default nightly-2018-12-27

これでvsvodeで rusty coderls が併用できるようになりました。