Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Support installing third-party tier-3 target support with rustup

Open
#4,635 17 comments 0 reactions 1 assignee View on GitHub

@rami3l is already working on this.

Since Dec 9, 2025.

Assessment

This issue has not been assessed yet.

Description

enhancement
Problem you are trying to solve

I'd like to be able to install a tier-3 toolchain using rustup rather than the current solution of unzipping a file into $(rustc --print sysroot).

Currently we manually build zipfiles of the libstd for riscv32imac-unknown-xous-elf using the stable compiler and install this into $(rustc --print sysroot)/lib/rustlib. This works well as it allows for users to have the standard library without needing a C compiler (which is otherwise required to build libm).

These zipfiles are installed by the xtask pattern as part of the normal build, but it would be nice to have it managed in a standard way.

Solution you'd like

rustup supports having alternate distribution servers. These are mostly used for pre-release testing, but it would be possible to use it for tier-3 targets. For example, we could build packages for xous with ./x.py dist --target riscv32imac-unknown-xous-elf build-manifest rust-std and then use the build-manifest program to generate a dist server root.

The issue is that target add refuses to consult the dist server for the riscv32imac-unknown-xous-elf target triple, so even though that target exists and is available on that server it won't go looking for it.

Notes

Initially I was going to open an issue identical to https://github.com/rust-lang/rustup/issues/4590 because it took me a while to discover what the problem was. However I see as of https://github.com/rust-lang/rustup/issues/4006 it at least doesn't refer to rustc --print target-list anymore.

Dominant language
Rust
Stars
7k
Forks
1.1k
Avg merge
1d 1h
Merged PRs (30d)
46

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.

More from rust-lang/rustup

All issues in rust-lang/rustup

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.