Skip to content

On Linux, after upgrade from pre-1.31, clippy, rustfmt and rls can't be installed, unless stable is reinstalled and set as default #1574

@eddyp

Description

@eddyp

It seems I have found a similar issue as the one I found initially on Windows and reported in rust-lang/www.rust-lang.org#591, but the this time on Linux and the workaround does not seem to be complete - see below for complete workaround.

Please note that I had installed rustfmt-preview, rls-preview before trying to update.

eddy@feodora:~$ rustup self update
info: checking for self-updates
eddy@feodora:~$ rustup -V
rustup 1.16.0 (beab5ac2b 2018-12-06)
eddy@feodora:~$ rustup toolchain list
stable-x86_64-unknown-linux-gnu
nightly-x86_64-unknown-linux-gnu (default)
eddy@feodora:~$ rustup component add rustfmt
error: component 'rustfmt' for target 'x86_64-unknown-linux-gnu' is unavailable for download
eddy@feodora:~$ rustup component list | grep ' ('
cargo-x86_64-unknown-linux-gnu (default)
rust-analysis-x86_64-unknown-linux-gnu (installed)
rust-docs-x86_64-unknown-linux-gnu (default)
rust-src (installed)
rust-std-thumbv6m-none-eabi (installed)
rust-std-thumbv7em-none-eabi (installed)
rust-std-thumbv7m-none-eabi (installed)
rust-std-x86_64-pc-windows-msvc (installed)
rust-std-x86_64-unknown-linux-gnu (default)
rustc-x86_64-unknown-linux-gnu (default)

I even tried uninstalling stable and reinstalling, but had no success.

eddy@feodora:~$ rustup toolchain uninstall stable
info: uninstalling toolchain 'stable-x86_64-unknown-linux-gnu'
info: toolchain 'stable-x86_64-unknown-linux-gnu' uninstalled
eddy@feodora:~$ rustup toolchain list
nightly-x86_64-unknown-linux-gnu (default)
eddy@feodora:~$ rustup update
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'
info: checking for self-updates

  nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.32.0-nightly (4a45578bc 2018-12-07)

eddy@feodora:~$ rustup component add rustfmt
error: component 'rustfmt' for target 'x86_64-unknown-linux-gnu' is unavailable for download
eddy@feodora:~$ rustup toolchain install stable
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: latest update on 2018-12-06, rust version 1.31.0 (abe02cefd 2018-12-04)
info: downloading component 'rustc'
 77.7 MiB /  77.7 MiB (100 %)  24.0 MiB/s ETA:   0 s                
info: downloading component 'rust-std'
 54.2 MiB /  54.2 MiB (100 %)  25.5 MiB/s ETA:   0 s                
info: downloading component 'cargo'
info: downloading component 'rust-docs'
info: installing component 'rustc'
info: installing component 'rust-std'
info: installing component 'cargo'
info: installing component 'rust-docs'

  stable-x86_64-unknown-linux-gnu installed - rustc 1.31.0 (abe02cefd 2018-12-04)

eddy@feodora:~$ rustup component add rustfmt
error: component 'rustfmt' for target 'x86_64-unknown-linux-gnu' is unavailable for download

Only after setting stable as default I could install rustfmt, clippy and rls:

eddy@feodora:~$ rustup default stable
info: using existing install for 'stable-x86_64-unknown-linux-gnu'
info: default toolchain set to 'stable-x86_64-unknown-linux-gnu'

  stable-x86_64-unknown-linux-gnu unchanged - rustc 1.31.0 (abe02cefd 2018-12-04)

eddy@feodora:~$ rustup toolchain list
stable-x86_64-unknown-linux-gnu (default)
nightly-x86_64-unknown-linux-gnu
eddy@feodora:~$ rustup component add rustfmt
info: downloading component 'rustfmt'
info: installing component 'rustfmt'
eddy@feodora:~$ rustup component add clippy
info: downloading component 'clippy'
info: installing component 'clippy'
eddy@feodora:~$ rustup component add rls
info: downloading component 'rls'
info: installing component 'rls'

I suspect this issue is known, but I wanted to make sure at least the complete solution is listed and the tracker contains the complete workaround somewhere.

Is it expected for this to work out of the box after the next rust/rustup release?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions