| 6 May 2026 |
siraben | * cc: dish [Fox/It/She] | 17:06:28 |
siraben | also we can relax the intermediate gcc from 10 to 7.5, end to end still compiles up to gcc15 https://github.com/NixOS/nixpkgs/pull/517369 | 17:09:20 |
siraben | ah looks like live-bootstrap wants gcc 10 for future risc-v support, so we probably shouldn't break from them with 7.5 | 17:14:09 |
dish [Fox/It/She] | yeah ideally we have as many architectures supported as possible | 17:14:23 |
dish [Fox/It/She] | we don't strictly follow live-bootstrap since their bootstrap is a lot more aggressive in removing binaries and pre-generated files(see the automake/autoconf dance they have to do in order to bootstrap up versions) but they are definitely a large source of bootstrapping knowledge along with guix's bootstrap | 17:15:10 |
dish [Fox/It/She] | In reply to @siraben:matrix.org https://github.com/NixOS/nixpkgs/pull/517368 looking at that PR, will submit review comments later once github is actually working again since adding review comments is broken rn 🙃 | 17:26:36 |
dish [Fox/It/She] | thanks github /s | 17:27:15 |
dish [Fox/It/She] | one thing is that since you've removed isl from gcc, you should also remove the fetch for it as well from each file | 17:27:45 |
dish [Fox/It/She] | also, breaking the changes up into smaller commits targeted at a few changes per package at a time would make it easier to review and keep track of in git history | 17:28:34 |
siraben | thanks, amending | 17:33:28 |
siraben | done | 17:42:38 |
| 7 May 2026 |
siraben | https://github.com/NixOS/nixpkgs/pull/517368 another review on bootstrap configure flag prune would be appreciated, one approval already | 15:39:54 |
siraben | getting mrustc bootstrap working | 15:59:15 |
Winter | i thought we agreed that we don’t want to do mrustc? there was some reason nobody has done it till now… maybe Alyssa Ross remembers | 16:01:10 |
whispers [& it/fae] | @emily has expressed concerns (that i agree with) about mrustc's concerns to keep up with rustc and LLVM | 16:02:29 |
K900 | I think the problem that keeps coming up is the insanely long bootstrap chain | 16:03:11 |
whispers [& it/fae] | but we do have a broken = true; mrustc-boostrap package that just builds one rustc version (and iirc there's an open pr to update that to mrustc v0.12.0 / rustc 1.90.0) | 16:03:14 |
whispers [& it/fae] | and yeah the bootstrap chain prior to the latest release was some 19 rustc versions + 5 llvm versions, which is a pain in the ass to build (especially on staging) | 16:03:42 |
whispers [& it/fae] | * and yeah the bootstrap chain prior to the latest mrustc release was some 19 rustc versions + 5 llvm versions, which is a pain in the ass to build (especially on staging) | 16:04:02 |
whispers [& it/fae] | and as a small (one maintainer) project, it keeping up is a really rough story and that chain length grows real quicky | 16:04:34 |
whispers [& it/fae] | * and yeah the bootstrap chain prior to the latest mrustc release was some 19 rustc versions + 5 llvm versions (including one we had dropped from nixpkgs entirely at that point), which is a pain in the ass to build (especially on staging) | 16:04:48 |
whispers [& it/fae] | * and yeah the bootstrap chain prior to the latest mrustc release was some 19 rustc versions + 5 llvm versions (including one we had dropped from nixpkgs entirely at that point), which is a pain in the ass to build and maintain dependencies for | 16:04:58 |
whispers [& it/fae] | * and yeah the bootstrap chain prior to the latest mrustc release was some 19 rustc versions + 5 llvm versions (including llvm 17, which we had dropped from nixpkgs entirely at that point), which is a pain in the ass to build and maintain dependencies for | 16:05:29 |
siraben | i already got rustc 1.91.0 bootstrapped from stage0 | 16:10:31 |
siraben | going through 1.92 to 1.95 | 16:10:39 |
K900 | It's not that it's hard to do | 16:11:15 |
K900 | The problem is that it basically slows down the critical path on Hydra by like, days | 16:11:24 |
whispers [& it/fae] | yeah, i did it out of tree a few versions ago and build times were rough. the numbers i had were:
reference for build perf on my laptop: nom-build -A rustc-unwrapped --check on nixpkgs master: 1h52m17s mrustc: 5m2s rust-1900: 1h54m18s (you can probably cut this one down but i didn't bother at the time) rust-1911: 17m33s rust-1920: 18m53s rust-1931: 18m1s rustc-1940: 1h48m52s (literally just pkgs.rustc-unwrapped.overrideAttrsed) | 16:13:32 |
Alyssa Ross | I would love to do mrustc | 16:13:39 |
whispers [& it/fae] | yeah, i did it out of tree a few versions ago and build times were rough. the numbers i had were:
reference for build perf on my laptop: nom-build -A rustc-unwrapped --check on nixpkgs master: 1h52m17s mrustc: 5m2s rust-1900: 1h54m18s (you can probably cut this one down but i didn't bother at the time) rust-1911: 17m33s rust-1920: 18m53s rust-1931: 18m1s rustc-1940: 1h48m52s (literally just pkgs.rustc-unwrapped.overrideAttrsed) and that's uh. really rough | 16:13:44 |