[From nobody Fri Oct 16 08:05:07 2026
Received: (at 1134157-done) by bugs.debian.org; 16 Oct 2026 07:03:47 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-6.8 required=4.0 tests=BAYES_00,FOURLA,
 HAS_BUG_NUMBER,MONOTONE_WORDS_2_15,RCVD_IN_DNSWL_MED,SPF_HELO_NONE,
 SPF_PASS,VERSION autolearn=ham autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 22; hammy, 150; neutral, 163; spammy,
 0. spammytokens: hammytokens:0.000-+--autopkgtest,
 0.000-+--cidebiannet, 0.000-+--ci.debian.net,
 0.000-+--UD:ci.debian.net, 0.000-+--exp1
Return-path: &lt;f.gruenbichler@proxmox.com&gt;
Received: from proxmox-new.maurer-it.com ([94.136.29.106]:41422)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;f.gruenbichler@proxmox.com&gt;)
 id 1xHbyk-00DMx3-12 for 1134157-done@bugs.debian.org;
 Fri, 16 Oct 2026 07:03:47 +0000
Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1])
 by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 276234254B
 for &lt;1134157-done@bugs.debian.org&gt;; Fri, 16 Oct 2026 09:03:41 +0200 (CEST)
Date: Fri, 16 Oct 2026 09:03:36 +0200
From: Fabian =?iso-8859-1?q?Gr=FCnbichler?= &lt;f.gruenbichler@proxmox.com&gt;
Subject: Re: [Pkg-rust-maintainers] Bug#1134157: rustc-src: impossible to
 satisfy crate  dependencies
To: 1134157-done@bugs.debian.org
MIME-Version: 1.0
User-Agent: astroid/0.17.0 (https://github.com/astroidmail/astroid)
Message-Id: &lt;1792133920.l8pz4k192r.astroid@yuna.none&gt;
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2
X-Bm-Transport-Timestamp: 1792134219680

Version: 1.95.0+dfsg1-1

On Thu, 14 May 2026 12:43:49 +0200 Fabian =3D?utf-8?Q?Gr=3DC3=3DBCnbichler?=
=3D &lt;debian@fabian.gruenbichler.email&gt; wrote:
&gt; Control: tag -1 +pending
&gt;=20
&gt; On Sat, 18 Apr 2026 10:08:37 +0200 =3D?UTF-8?Q?Fabian_Gr=3DC3=3DBCnbichle=
r?=3D &lt;debian@fabian.gruenbichler.email&gt; wrote:
&gt; &gt; On Fri, Apr 17, 2026, at 11:05 PM, Jonas Smedegaard wrote:
&gt;=20
&gt; &gt; [..]
&gt;=20
&gt; &gt; &gt; It sounds like there is no bug here at all. Feel free to close this i=
f
&gt; &gt; &gt; that's how you see it.
&gt; &gt;=20
&gt; &gt; I think I'll leave it open to track maybe finding a way to support
&gt; &gt; -Zbuild-std in packaging context as well (e.g., to unlock some firmware
&gt; &gt; building usecase in the future, that might require a custom libstd).
&gt; &gt;=20
&gt; &gt; It's a bit of a tough nut to crack though, because there can only be on=
e
&gt; &gt; replacement for crates.io (which we already use for packaged crates), s=
o
&gt; &gt; we'd probably need to ship a copy of the vendored crates as part of
&gt; &gt; rust-src, and adapt all the dependencies to be path dependencies, and s=
o
&gt; &gt; on.
&gt;=20
&gt; It turned out that this is actually easier than I thought.
&gt;=20
&gt; Starting with the next rustc upload, rust-src will ship a copy of the
&gt; few vendored crates needed to rebuild std/core/alloc. If you make them
&gt; available to cargo (i.e. by linking them into the fake registry), a lot
&gt; of build-std variants already work (some targets will of course require
&gt; extra setup or dependencies, like special linkers or LLVM bits).
&gt;=20
&gt; Upstream will start doing that as well:
&gt;=20
&gt; https://github.com/rust-lang/rust/pull/156196
&gt;=20
&gt; and plans to later switch build-std over to automatically pick those up,
&gt; at which point even linking them into the registry would no longer be
&gt; required.

build-std should now work, rust-src ships the vendored crates required
for building std/core/.. in /usr/src/rustc-1.X.Y/library/vendor/ and
there is an autopkgtest ensuring it doesn't regress:

https://salsa.debian.org/rust-team/rust/-/blob/debian/sid/debian/tests/crea=
te-and-build-crate-with-build-std
https://ci.debian.net/packages/r/rustc/unstable/amd64/76230036/#S10

as well as packages in the wild using it:

https://sources.debian.org/src/m1n1/2.0.0-1~exp1/debian/rules

there will likely be further developments upstream that will allow us to
skip the manual symlinking of vendored crates, with cargo automatically
picking them for building std/..

Fabian]