Commit Graph

10397 Commits

Author SHA1 Message Date
Maximilian Bosch
db8f579dd1 linux/common-config: enable CPU_HAS_LBT on loongarch64 (#476767) 2026-01-06 13:37:42 +00:00
Philip Taron
db1801609d Drop more reiserfs (#461260) 2026-01-05 21:08:05 +00:00
Jaakko Sirén
15ac0a5b9b kernel/common-config: enable fs-verity and IPE LSM
Enable filesystem integrity verification features:

- FS_VERITY: Per-file Merkle tree integrity verification. Files with
  fs-verity enabled become immutable and are verified block-by-block
  on read. Zero overhead when not used. Already enabled by default
  in Fedora, Ubuntu, and Arch.

- FS_VERITY_BUILTIN_SIGNATURES: Allow verifying fs-verity signatures
  against keys in the kernel keyring.

- SECURITY_IPE: Integrity Policy Enforcement LSM (merged in 6.12).
  Allows enforcing policies based on file integrity properties like
  fs-verity measurements or dm-verity. Useful for verified boot and
  ensuring only integrity-verified files can be executed.

- IPE_PROP_FS_VERITY: Allow IPE to use fs-verity as a trust source.

- IPE_PROP_FS_VERITY_BUILTIN_SIG: Allow IPE to require signed fs-verity.

These features have no runtime impact unless explicitly used, but enable
important security use cases like immutable package stores (NixOS /nix/store)
and verified boot configurations.
2026-01-05 00:31:52 +02:00
R. Ryantm
1dbd29ad86 linuxKernel.kernels.linux_zen: 6.18.2 -> 6.18.3 2026-01-03 23:00:18 +00:00
darkyzhou
d600c95aff linux/common-config: enable CPU_HAS_LBT on loongarch64 2026-01-03 16:43:27 +08:00
Sandro Jäckel
4c232305c9 linux: be explicit about REISERFS being gone after 6.13
see 25.05 release notes
2026-01-03 04:37:46 +01:00
K900
70c30b1e8a staging-nixos merge for 2026-01-02 (#476256) 2026-01-02 15:39:45 +00:00
zowoq
bef7dc5a79 linux_6_18: 6.18.2 -> 6.18.3 2026-01-02 13:36:00 +00:00
zowoq
25040990f7 linux_testing: 6.19-rc1 -> 6.19-rc3 2026-01-02 13:35:57 +00:00
nixpkgs-ci[bot]
42860d60a3 Merge master into staging-nixos 2025-12-29 18:07:15 +00:00
Maximilian Bosch
2166d49cfa linux_6_17: remove (#473331) 2025-12-29 12:06:30 +00:00
nixpkgs-ci[bot]
cbdb92c71e Merge master into staging-nixos 2025-12-28 15:06:29 +00:00
Alyssa Ross
6a677c6158 linux_xanmod, linux_xanmod_latest: 2025-12-18 (#472459) 2025-12-28 12:42:39 +00:00
nixpkgs-ci[bot]
694a53a7f2 Merge master into staging-nixos 2025-12-28 00:21:49 +00:00
R. Ryantm
ed531ed04e linuxKernel.kernels.linux_lqx: 6.17.13 -> 6.18.2 2025-12-27 22:24:47 +00:00
nixpkgs-ci[bot]
fdab5fd3e0 Merge master into staging-nixos 2025-12-26 18:07:14 +00:00
Alyssa Ross
bdbba57c93 linux/hardened/patches/6.12: v6.12.56-hardened1 -> v6.12.61-hardened1 (#474298) 2025-12-26 13:39:31 +00:00
nixpkgs-ci[bot]
b3c6bf08a5 Merge master into staging-nixos 2025-12-24 12:08:27 +00:00
K900
a397c0454e linux/common-config: choose between HIGHMEM4G and HIGHMEM64G (#473734) 2025-12-24 11:03:50 +00:00
Łukasz Stelmach
e80537b82b linux/common-config: choose between HIGHMEM4G and HIGHMEM64G
The documentation[1] referred in the commit 39f89dc647
("linux/common-config: fix crash kernel on i686") applies to kernel
versions 6.15 and newer, where HIGHMEM64G has been removed by the upstream
commit bbeb69ce3013[2].

Thus, while for kernels older than both options are correct with regards
to kdump functions, only one can be selected because the options are
part of "choice".

[1] ee94b00c1a/Documentation/admin-guide/kdump/kdump.rst (dump-capture-kernel-config-options-arch-dependent-i386-and-x86_64)

[2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=bbeb69ce301323e84f1677484eb8e4cd8fb1f9f8

Fixes: 39f89dc647 ("linux/common-config: fix crash kernel on i686")
2025-12-24 11:42:18 +01:00
Mio
cfa6263e0a linux/hardened/patches/6.12: v6.12.56-hardened1 -> v6.12.61-hardened1 2025-12-24 19:30:50 +11:00
Łukasz Stelmach
4d9594e171 linux/common-config: select RUST_FW_LOADER_ABSTRACTIONS only with Rust
Rust may not be available for i686 and the counfigration would fail.

Fixes: 6b6c8b1402 ("linux/common-config: explicitly select RUST_FW_LOADER_ABSTRACTIONS for now")
2025-12-24 00:53:17 +01:00
Pedro Alves
64d4b0a39b kernel/common-config: enable all thermal governors
This allows more flexibility in how thermal management is handled in any
NixOS system. It is especially useful for embedded devices, which
often rely on a user-space thermal governor.

Previously, only the `BANG_BANG` and `STEP_WISE` governors were enabled
on x86, or `STEP_WISE` and `POWER_ALLOCATOR` on aarch64, which come from
the defconfig. There is however no negative to having all of them
enabled on all architectures, so for consistency this enables all of
them everywhere.

Other distros seem to have all of the thermal governors enabled as well:
- Ubuntu: https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/noble/tree/debian.master/config/annotations#n13757
- Debian: https://salsa.debian.org/kernel-team/linux/-/blob/debian/latest/debian/config/config#L5116-L5120
- Arch: https://gitlab.archlinux.org/archlinux/packaging/packages/linux/-/blob/main/config?ref_type=heads#L5788-L5792
2025-12-23 09:38:59 +00:00
nixpkgs-ci[bot]
60d8b1641e Merge master into staging-nixos 2025-12-23 00:19:38 +00:00
R. Ryantm
984fd7e251 linuxKernel.kernels.linux_zen: 6.18.1 -> 6.18.2 2025-12-22 18:34:35 +00:00
Maximilian Bosch
dfec6429cb linux_6_17: remove
Was EOLed upstream.
2025-12-22 16:33:58 +01:00
nixpkgs-ci[bot]
1f767f23ec Merge master into staging-nixos 2025-12-22 00:20:32 +00:00
K900
d922565492 linux/common-config: enable ARM64_PMEM (#473038) 2025-12-21 18:25:08 +00:00
Pedro Alves
f93b74e538 linux/common-config: Enable ARM64_PMEM
This feature, while not enabled by default by the Linux defconfig, is
required for usage of mainline kernels in the NVidia Jetson boards.

It appears to have no adverse effects, since its availability is
detected at runtime, so it's fine to have enabled on all aarch64
platforms.

Other distros have this enabled by default as well:
- Debian: https://salsa.debian.org/kernel-team/linux/-/blob/debian/latest/debian/config/arm64/config#L36
- Ubuntu: https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/noble/tree/debian.master/config/annotations#n1657
- Fedora: https://src.fedoraproject.org/rpms/kernel/blob/rawhide/f/kernel-aarch64-fedora.config#_497

This is also, from what I can tell, the only blocker to being able to
use NixOS on an NVidia Jetson, since they support UEFI just fine, and
the out-of-tree modules can easily be packaged in nixos-hardware.
2025-12-21 18:14:20 +00:00
R. Ryantm
4f30247e77 linuxKernel.kernels.linux_lqx: 6.17.12 -> 6.17.13 2025-12-21 12:43:02 +00:00
eljamm
723ea2adf2 linux_xanmod_latest: 6.17.12 -> 6.18.2
- Changelog: https://dl.xanmod.org/changelog/6.18/ChangeLog-6.18.2-xanmod1.gz
- Diff: https://gitlab.com/xanmod/linux/-/compare/6.17.12-xanmod1..6.18.2-xanmod1?from_project_id=51590166
2025-12-19 06:46:01 +00:00
eljamm
76032e38a0 linux_xanmod: 6.12.62 -> 6.12.63
- Changelog: https://dl.xanmod.org/changelog/6.12/ChangeLog-6.12.63-xanmod1.gz
- Diff: https://gitlab.com/xanmod/linux/-/compare/6.12.62-xanmod1..6.12.63-xanmod1?from_project_id=51590166
2025-12-19 07:42:33 +01:00
eljamm
19298c32f0 linux_xanmod: change URL prefetching in update script
Recently, there has been an issue with `nix-prefetch` that broke the
update script:

```
--- SHOWING ERROR LOG FOR linux-xanmod-6.12.62 ----------------------

this path will be fetched (0.02 MiB download, 0.07 MiB unpacked):
  /nix/store/6xiirw87j5l8n6da4ijibw90r8v1b7zh-nix-prefetch-0.4.1
copying path '/nix/store/6xiirw87j5l8n6da4ijibw90r8v1b7zh-nix-prefetch-0.4.1' from 'https://cache.nixos.org'...
Updating Xanmod "lts" from 6.12.62 to 6.12.63 (xanmod1)
error:
       … while calling the 'zipAttrsWith' builtin
         at /nix/store/wdqrnd6fkxdsf4xn2kkfa8f42shfw0i3-source/lib/attrsets.nix:1701:5:
         1700|     in
         1701|     f [ ] [ rhs lhs ];
             |     ^
         1702|

       … while evaluating a branch condition
         at /nix/store/wdqrnd6fkxdsf4xn2kkfa8f42shfw0i3-source/lib/attrsets.nix:1478:29:
         1477|   */
         1478|   optionalAttrs = cond: as: if cond then as else { };
             |                             ^
         1479|

       (stack trace truncated; use '--show-trace' to show the full, detailed trace)

       error: expected a set but found a function: «lambda extendsWithExclusion @ /nix/store/wdqrnd6fkxdsf4xn2kkfa8f42shfw0i3-source/lib/customisation.nix:846:30»
```

It's possible that this is caused by something else, but we should keep
the update script working until we find out what exactly and fix it.

Note: This first started happening to me on `nixos-25.11`, and is
[reproducible by other people](https://github.com/NixOS/nixpkgs/pull/468873#issuecomment-3624990626)
2025-12-19 07:36:30 +01:00
K900
b01ca3bca3 linux_6_12: 6.12.62 -> 6.12.63 2025-12-18 17:46:53 +03:00
K900
52e64396e9 linux_6_17: 6.17.12 -> 6.17.13 2025-12-18 17:46:53 +03:00
K900
402ad0fff0 linux_6_18: 6.18.1 -> 6.18.2 2025-12-18 17:46:53 +03:00
K900
864081696f linux_testing: 6.18-rc7 -> 6.19-rc1 2025-12-18 17:46:53 +03:00
K900
6b6c8b1402 linux/common-config: explicitly select RUST_FW_LOADER_ABSTRACTIONS for now 2025-12-18 17:46:53 +03:00
K900
c106a04370 linux/common-config: fix for Linux 5.10.y on aarch64 (#471737) 2025-12-17 18:32:00 +00:00
Alyssa Ross
8c9283d617 linux/common-config: enable FUNCTION_GRAPH_RETVAL
Enables recording return values of functions with ftrace.  Already
enabled by Fedora.
2025-12-17 19:21:05 +01:00
Alyssa Ross
409317adb3 linux/common-config: fix for Linux 5.10.y on aarch64
Until 5.15, HYPERV only supports x86, so forcing module broke
configuration of 5.10 on aarch64.  Our kernel configuration script
sets every module it can to "m" anyway, so it was redundant and
breakage-prone to set any value here for pre-6.18.

I've confiremd that HYPERV is still set to "m" on 6.12 after this
change.

Fixes: e9b977bc41 ("linux/common-config: update for 6.18")
2025-12-17 19:18:15 +01:00
Alyssa Ross
6062ffccd5 linux/common-config: fix for Linux 6.1.y
6.1.y is old enough that we use simpledrm, but not old enough that
GOOGLE_FRAMEBUFFER_COREBOOT supports simpledrm.  Explicitly setting
GOOGLE_FRAMEBUFFER_COREBOOT to module therefore broke 6.1.y build.

Our kernel configuration system will always answer "m" where possible,
so it's not usually necessary to set options to "module" like this.
It's less fragile to rely on that default where possible.

I've checked that building the kernel configfile now works on 5.10.y,
6.1.y, 6.12.y, and 6.18.y, and checked that all these options still
get set to "m" on at least the latter two.

Fixes: fca84bde0f ("linux/common-config: Enable coreboot firmware drivers")
2025-12-17 18:48:52 +01:00
nixpkgs-ci[bot]
ab1713fa16 Merge master into staging-nixos 2025-12-16 06:09:11 +00:00
R. Ryantm
2996a72ab6 linuxKernel.kernels.linux_zen: 6.18 -> 6.18.1 2025-12-15 13:23:44 +00:00
nixpkgs-ci[bot]
433b64f3ff Merge master into staging-nixos 2025-12-15 00:21:17 +00:00
Thiago Kenji Okada
580915cf40 linuxKernel.kernels.linux_lqx: 6.17.11 -> 6.17.12 (#470749) 2025-12-14 23:44:25 +00:00
nixpkgs-ci[bot]
acd39a2b87 Merge master into staging-nixos 2025-12-14 18:06:58 +00:00
R. Ryantm
9083eac8b3 linuxKernel.kernels.linux_lqx: 6.17.11 -> 6.17.12 2025-12-14 14:35:59 +00:00
Alyssa Ross
48b6ecba7a linux_xanmod, linux_xanmod_latest: 2025-12-13 (#470389) 2025-12-14 13:46:30 +00:00
Ingo Reitz
fca84bde0f linux/common-config: Enable coreboot firmware drivers 2025-12-14 01:18:25 +01:00