rust-lang / rust-lang/rustup

Provide a built-in way for rustup to adapt to a CI environment

Open
#5,011 20 comments 3 reactions 1 assignee View on GitHub

@rami3l is already working on this.

Since Aug 17, 2026.

enhancement
Dominant language
Rust
Stars
7k
Forks
1.1k
Avg merge
22h 40m
Merged PRs (30d)
46

Description

Discussed at the rust all-hands, it was suggested that it'd be good if rustup had better support for CI scenarios so it's less necessary for people to rely on third parties to provide them. This issue is intended to explore the existing options and see what we can adopt into rustup itself and how we can do so.

The most current github actions for rustup are rust-toolchain and setup-rust-toolchain.

What the actions do

  • sets environment variables by default such as:
    • CARGO_UNSTABLE_SPARSE_REGISTRY=true
    • CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse (or =git for older cargo)
    • CARGO_INCREMENTAL=0
    • CARGO_PROFILE_DEV_DEBUG=0
    • RUST_BACKTRACE=short
    • CARGO_TERM_COLOR=always
  • runs rustup toolchain install to install the current default toolchain
  • Uses --profile minimal and --no-self-update when installing specified toolchains
  • provides problem matchers for cargo and rustfmt issues

They can also provide caching but that is deemed out of scope for rustup.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.