Commit Graph

35189 Commits

Author SHA1 Message Date
Michael Daniels
62cb024522 Merge branch 'staging-next' into staging 2026-08-17 17:15:08 -04:00
Weijia Wang
f15e323e3e linuxPackages.v4l2loopback: 0.15.3 -> 0.15.4 (#535105) 2026-08-17 12:35:45 +00:00
nixpkgs-ci[bot]
fe296c3ab4 Merge staging-next into staging 2026-08-17 12:07:48 +00:00
Weijia Wang
3365511f02 openbsd: fix eval on riscv64-linux (#551100) 2026-08-17 11:56:37 +00:00
André Silva
f707dbc22d linux_7_2: init at 7.2 2026-08-17 10:25:09 +01:00
nixpkgs-ci[bot]
953a280e8f Merge staging-next into staging 2026-08-16 18:04:35 +00:00
Peder Bergebakken Sundt
f6211ccb49 linuxPackages.corefreq: 2.1.0 -> 2.1.2 (#522195) 2026-08-16 16:34:10 +00:00
nixpkgs-ci[bot]
ba5559be48 Merge staging-next into staging 2026-08-16 06:08:17 +00:00
Doron Behar
30547d4ec3 systemd: fix libfido2 buildInput not tracking withFido2 (#553159) 2026-08-16 04:04:50 +00:00
R. Ryantm
0556ae3055 linuxPackages.tt-kmd: 2.10.0 -> 2.11.0 2026-08-16 00:34:19 +00:00
Doron Behar
7dbc9d3a71 systemd: fix libfido2 buildInput not tracking withFido2 2026-08-16 03:20:13 +03:00
Guillaume Girol
9f6c8902cc linuxHeaders: enable structuredAttrs (#548499) 2026-08-15 21:23:40 +00:00
Stefan Frijters
3ee75b4acf net-tools: enable strictDeps, enable structuredAttrs, modernize (#551975) 2026-08-15 11:18:14 +00:00
nixpkgs-ci[bot]
2e3ab5afda Merge staging-next into staging 2026-08-14 18:18:33 +00:00
K900
17eb5ccab9 linux: raise minimum version for loongarch64 (#552656) 2026-08-14 13:57:20 +00:00
Weijia Wang
65cb7dee88 linux: raise minimum version for loongarch64 2026-08-14 15:49:56 +02:00
nikstur
04ebfcdbde systemds: re-enable tests that now work on master (#552470) 2026-08-14 13:12:25 +00:00
nixpkgs-ci[bot]
c9fb13fb5d Merge staging-next into staging 2026-08-14 06:30:09 +00:00
nikstur
98bc0ce41f systemds: re-enable tests that now work on master
These were previously commented out because they were broken on master
but now they work again.
2026-08-14 01:17:19 +02:00
K900
0ca42be61b zfs_unstable: sync backports with zfs_2_4 2026-08-13 21:45:32 +03:00
K900
65f2c6ba8a zfs_2_4: backport fix for kernel memory corruption 2026-08-13 21:44:33 +03:00
nixpkgs-ci[bot]
f66de93f85 Merge staging-next into staging 2026-08-13 18:18:57 +00:00
Sandro
74de4ca56e free5gc: init; linuxKernel.packages.linux_6_6.gtp5g: init at 0.10.2 (#513782) 2026-08-13 16:52:16 +00:00
dish
0643904899 Revert "minimal-bootstrap.glibc: 2.42 -> 2.44" (#552117) 2026-08-13 16:36:57 +00:00
K900
3ce38a8ae4 Merge remote-tracking branch 'origin/staging-next' into staging 2026-08-13 15:25:51 +03:00
Aleksi Hannula
1b5674a21b Revert "minimal-bootstrap.glibc: 2.42 -> 2.44"
This reverts commit 985bc462da.
2026-08-13 13:12:40 +03:00
Nico Felbinger
632f3b0e5f linuxKernel.packages.linux_6_6.gtp5g: init at 0.10.2 2026-08-13 10:42:47 +02:00
John Ericson
83cb487509 gcc/ng: build libgcc twice, once for the libc and once against it
The libc bootstrap had every stage except the last. `gccNoLibgcc` builds
libgcc, `gccWithLibgcc` builds the libc with it — and then nothing goes
back to rebuild libgcc now that the libc exists. So the only libgcc
anyone ever got was the one from before there was a libc, which is
necessarily single-threaded: `gthr-posix.h` includes `<pthread.h>`
unconditionally, and at that point there is no libc to provide it.
`libstdcxx` above it assumed `posix` regardless, so the two disagreed by
construction — the unwinder's registry locking compiled away to nothing
underneath a `libstdc++` handing out `std::thread`.

Add the last stage the way the LLVM package set does with
`compiler-rt-no-libc` and `compiler-rt-libc`: instantiate the same
package twice. `libgcc-no-libc` is the existing one and now feeds only
the three bootstrap compilers. `libgcc-libc` is built after the libc, by
a new `gccWithLibcAndBasicLibgcc` — real libc, bootstrap libgcc — and is
what `libgcc` resolves to for any platform that has a libc.

Nothing is passed to the package to say which of the two it is. The
distinction is the compiler it is handed, exactly as in the LLVM set:
`gccNoLibgcc` is wrapped with `binutilsNoLibc`, whose `libc` is
`preLibcHeaders` -- the header-only stand-in, or nothing at all on
platforms without one -- and `wrapCCWith` defaults a wrapper's `libc` to
its bintools'. So the package reads `stdenv.cc.libc` and needs no
bootstrap flag of its own.

Which threading model is available is a property of the libc, so the libc
declares it as `passthru.threadModel` and `libgcc` reads it from there.
That is what makes the pre-libc build single-threaded without being told
to be: a headers-only package declares no `threadModel`, a real libc
does.
`libstdcxx` in turn takes both the model and the generated
`gthr-default.h` from `libgcc`, replacing a `$CXX -v` probe that asked
the compiler — which in this package set is configured separately from
libgcc and so answers for the wrong component. Platforms that declare
nothing keep the single-threaded model they already had.

The second libgcc is also the first one that can be shared. Previously
only the static library was built, and the compiler was configured
`--disable-shared` for every target, which is compiled into the driver's
specs, so it named bare `-lgcc` and never `-lgcc_s`:

    $ x86_64-unknown-netbsd-g++ -### eh.cc
    collect2 ... -lstdc++ -lm -lgcc -lc -lgcc

Both halves have to move together. Build the shared library without
changing the specs and the unwinder leaves `libgcc.a` while the specs
still name it:

    libgcc.a         _Unwind_RaiseException: absent
    libgcc_eh.a      _Unwind_RaiseException: present
    libgcc_s.so.1    _Unwind_RaiseException: present

so every throwing C++ program fails to link and `rustc` fails on
`-lgcc_s` outright. Either standard arm would do, `-lgcc_s -lgcc` shared
or `-lgcc -lgcc_eh` static; the halves disagreeing is what breaks.

`--disable-shared` was passed to libgcc with the comment "Do not have
dynamic linker without libc". That does not hold: the monolithic build
ships `libgcc_s` even from its *nolibc* cross stage, and the result needs
nothing at run time --

    $ readelf -d .../nolibc-gcc-15.3.0-libgcc/.../libgcc_s.so.1
     0x...0e (SONAME)  Library soname: [libgcc_s.so.1]
    (no NEEDED entries at all)

What genuinely blocks it is libgcc's own makefile: `SHLIB_LC` defaults to
`-lc`, so the `libgcc_s.so` rule links against a libc that does not exist
yet and fails with `cannot find -lc`. The monolithic build clobbers that
variable -- see `common/libgcc-buildstuff.nix` -- so reuse that helper
rather than reinventing it. On the compiler side the flag derives from
`hasSharedLibraries`, as the monolithic build does, so a target genuinely
without shared libraries keeps the old behaviour; it is spelled
`enableTargetShared` there because it describes the target's libgcc
rather than anything about the compiler being built.

Verified on `x86_64-unknown-netbsd`, where `libgcc_s.so.1` and the
`GROUP ( libgcc_s.so.1 -lgcc )` script now appear in the output, and by
building `stdenv.cc` for `aarch64-unknown-linux-gnu` and
`aarch64-unknown-linux-musl`.

Assisted-by: Claude Code (Claude Opus 5)
2026-08-12 16:59:29 -04:00
Stefan Frijters
a66df804a4 net-tools: enable structuredAttrs, use finalAttrs, hash 2026-08-12 19:56:30 +02:00
Stefan Frijters
ab0b6d2c82 net-tools: enable strictDeps 2026-08-12 19:56:22 +02:00
nixpkgs-ci[bot]
acaca82545 Merge staging-next into staging 2026-08-12 00:21:23 +00:00
nixpkgs-ci[bot]
88bf7d2dff Merge master into staging-next 2026-08-12 00:20:57 +00:00
Audrey Dutcher
57966db48d freebsd.mkDerivation: fix meta when custom meta is set (#550620) 2026-08-12 00:13:59 +00:00
R. Ryantm
aa81653b54 linuxKernel.kernels.linux_zen: 7.1.5 -> 7.1.8 2026-08-11 19:35:41 +00:00
Jo
436f223d43 minimal-bootstrap: Package updates (#547879) 2026-08-11 05:44:33 +00:00
nixpkgs-ci[bot]
f2c8920574 Merge master into staging-next 2026-08-11 00:16:59 +00:00
Nick Cao
bcaa269bb6 linuxPackages.hid-tmff2: 0.83-unstable-2026-03-10 -> 0.83-unstable-2026-08-09 (#550995) 2026-08-10 22:20:54 +00:00
Vladimír Čunát
97f2438f9a Merge master into staging-next 2026-08-10 15:42:05 +02:00
liberodark
2743a20db7 openbsd: fix eval on riscv64-linux 2026-08-10 13:22:39 +02:00
eljamm
76c75b4d67 linux_xanmod_latest: 7.1.6 -> 7.1.8
- Changelog: https://dl.xanmod.org/changelog/7.1/ChangeLog-7.1.8-xanmod1.gz
- Diff: https://gitlab.com/xanmod/linux/-/compare/7.1.6-xanmod1..7.1.8-xanmod1?from_project_id=51590166
2026-08-10 07:58:17 +02:00
eljamm
6832340e94 linux_xanmod: 6.18.42 -> 6.18.44
- Changelog: https://dl.xanmod.org/changelog/6.18/ChangeLog-6.18.44-xanmod1.gz
- Diff: https://gitlab.com/xanmod/linux/-/compare/6.18.42-xanmod1..6.18.44-xanmod1?from_project_id=51590166
2026-08-10 07:58:17 +02:00
R. Ryantm
c66537c54c linuxPackages.hid-tmff2: 0.83-unstable-2026-03-10 -> 0.83-unstable-2026-08-09 2026-08-10 03:11:15 +00:00
nixpkgs-ci[bot]
1c7bfe4994 Merge master into staging-next 2026-08-10 00:17:41 +00:00
zowoq
ed11f2c00d linux_6_6: 6.6.150 -> 6.6.151 2026-08-10 08:43:45 +10:00
zowoq
2226b96ba4 linux_6_12: 6.12.102 -> 6.12.103 2026-08-10 08:43:45 +10:00
zowoq
510f4c4b5c linux_6_18: 6.18.43 -> 6.18.44 2026-08-10 08:43:45 +10:00
zowoq
256b6f72ed linux_7_1: 7.1.7 -> 7.1.8 2026-08-10 08:43:45 +10:00
zowoq
63e225c444 linux_testing: 7.2-rc6 -> 7.2-rc7 2026-08-10 08:43:44 +10:00
nixpkgs-ci[bot]
a68f8e3193 Merge master into staging-next 2026-08-09 18:08:38 +00:00
Martin Weinelt
20e5e91633 fwts: 25.09.00 -> 26.07.00, remove kernel module, remove pcre (#505060) 2026-08-09 14:46:06 +00:00