Nixpkgs Stdenv | 228 Members | |
| 74 Servers |
| Sender | Message | Time |
|---|---|---|
| 14 Dec 2025 | ||
| the issue has faded into my scrollback, but i think it was tinycc-musl, and it doesn't look like it https://github.com/NixOS/nixpkgs/blob/604c2f3e6eb4b8725779168e9adef366252e8598/pkgs/os-specific/linux/minimal-bootstrap/tinycc/musl.nix#L17-L20 | 03:18:05 | |
| * the issue has faded past the limit of my scrollback, but i think it was tinycc-musl, and it doesn't look like it https://github.com/NixOS/nixpkgs/blob/604c2f3e6eb4b8725779168e9adef366252e8598/pkgs/os-specific/linux/minimal-bootstrap/tinycc/musl.nix#L17-L20 | 03:18:43 | |
| * doesn't look like it https://github.com/NixOS/nixpkgs/blob/604c2f3e6eb4b8725779168e9adef366252e8598/pkgs/os-specific/linux/minimal-bootstrap/tinycc/musl.nix#L17-L20 | 03:20:14 | |
| Oh, totally forgot about this. There's also that repo.or.cz geo-blocks UK at the moment. There's a GitHub mirror, but I suppose it might be tricky to set up mirror rotation before we have curl? | 10:08:37 | |
| I guess fetchgit with lowercase g would also not be available, but I've just learned about similarly named builtin fetchGit. Could we use that? | 10:10:40 | |
| Or alternatively just default to the unofficial GitHub mirror, or set up a mirror of our own even | 10:26:04 | |
| 4 Aug 2022 | ||
| 03:27:09 | ||
| 22:08:01 | ||
| 6 Aug 2022 | ||
| Does anyone know where the fact that the Darwin stdenv builds CMake twice comes from? As far as I can tell, it's from stage 0, and then just gets used in the other stages from there. Am I missing something here, is it something with the overrides? It looks like it might be, but then the fact that those are only allowed in the final stage (per (Isn't this the same pattern (defining in one stage and referencing in the others) that makes Glibc only build a limited number of times in the Linux stdenv?) | 08:00:17 | |
| You think
| 14:59:09 | |
Looking at stdenv's dep tree I see 2 cmake-boot hashes and one cmake hash: https://dpaste.com/8GGM6P9BF.txt | 15:03:11 | |
In reply to @trofi:matrix.orgI have no particular opinion, I'm just curious how that happens. | 21:22:09 | |
Oh, for clarification, I was talking about cmake-boot. | 21:22:19 | |
(which is cmake in the stdenv stages) | 21:22:29 | |
| see the line i linked | 21:22:36 | |
AFAIU cmake = cmakeMinimal is only for stage1-4 (first build: bootstrapTools -> cmake-boot in pastebin). Last stage uses cmake as is. Also note that cmakeMinimal is used by zstd (used by final stage, does second build: stage4 -> cmake-boot -> zstd in pastebin). | 21:44:31 | |
I used the following command to grep through the full depgraph: $ nix-store --query --graph $(nix-instantiate -A stdenv --argstr system x86_64-darwin) | 21:45:39 | |
| 10 Aug 2022 | ||
| 09:55:36 | ||
| 17 Aug 2022 | ||
Quiz question: for a final glibc used in nixpkgs all over the place which gcc you think is used to build it on linux? a) Possible answers: gcc from bootstrap tools b) gcc from nixpkgs. | 17:36:21 | |
| You knew :) | 17:39:09 | |
| obviously it is the more ridiculous answer 🙃 | 17:40:03 | |
| Yeah :) Spoiler: https://dpaste.com/DMD34BUN9.txt | 17:40:23 | |
* Quiz question: for a final glibc used in nixpkgs all over the place which gcc you think is used to build it on linux? Possible answers: a) gcc from bootstrap tools b) gcc from nixpkgs. | 17:42:06 | |
| AFAIK it isn't easy to do better. gcc links against glibc. So either somehow try replacing it later (rather hacky, probably) or build gcc twice during bootstrapping (will remain persistently annoying). Or as you suggest, update the bootstrapping tools more often. | 17:49:27 | |
| I might've missed some options. Or perhaps even confuse something. | 17:49:48 | |
| * I might've missed some options. Or perhaps even confused something. | 17:49:52 | |
| * AFAIK it isn't easy to do better. gcc links against glibc. So either somehow try replacing gcc's glibc later (rather hacky, probably) or build gcc twice during bootstrapping (will remain persistently annoying). Or as you suggest, update the bootstrapping tools more often. | 17:50:20 | |
| [The other day I found nod. Your description matches my understanding. Today we build | 17:58:53 | |
| This maybe: https://github.com/NixOS/nixpkgs/pull/132343 | 17:58:54 | |
AFAIU splitting libraries out does not fully solve the reliance on code generated directly by bootstrapTools toolchain. glibc would still have to be rebuilt once again. But the split might ease adding extra lightweight stages to rebuild some parts of stdenv. I dread of the thought maintaining such patches downstream though :) | 18:06:57 | |