mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-08-26 18:24:53 +00:00
`examples.nix` had settings that only repeated what the `config` already implied. They read as if the platform were special, when it ought to be the default. Now the default logic in `default.nix` ought to handle the setting in question in a rule-based way so it is. Change: - `useLLVM` now covers - UEFI - MSVC CRT and C++ ABI - Windows on AArch64 as well as FreeBSD and OpenBSD - `libc` gains a UEFI case hat retires seven `useLLVM` settings, eighteen `libc = "newlib"`, one `libc = "bionic"`, and the `libc`/`linker` pair on the UEFI examples. The remaining `libc`s in examples now means"this differs from what the triple implies", which is true of the seven left: `newlib-nano`, the mingw `msvcrt`/`ucrt` pairs those entries exist to distinguish, and `mmix`, whose OS is `mmixware` rather than `none` so the bare-metal default does not reach it. That one gains a comment. No functional change. Elaborating all 87 platforms in `lib.systems.examples` before and after gives byte-identical `config`, `system`, `useLLVM`, `useGccNG`, `libc`, `linker` and `rust.rustcTarget`. `mmix` surfaced that way, having regressed to `native/impure`. Assisted-by: Claude Code (Claude Opus 5)