Guix can identify builtin modules when building the initrd now.
* nongnu/packages/linux.scm (make-linux-xanmod)[arguments]<#:phases>: Don't
override CONFIG_CRYPTO_XTS and CONFIG_VIRTIO_CONSOLE in 'add-xanmod-defconfig.
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Upstream Guix defaulted linux-libre-lts to 6.6 in commit
b4aed68e960116b2b60f68ea1468d7a526149823. Do likewise here.
* nongnu/packages/linux.scm (linux-lts): Use linux-6.6.
Guix will remove linux-libre-6.7 soon (end of life), so remove linux-6.7
before it leads to an error in 'guix pull' when it is removed upstream.
* nongnu/packages/linux.scm (linux-6.7): Remove variable.
Upstream Guix defaulted to linux-libre-6.8 in commit
40e44bdea6f4c3dc3563427fdf096a60812534a7. Do likewise here.
* nongnu/packages/linux.scm (linux): Use linux-6.8.
* nongnu/packages/linux.scm (linux-firmware): Update to 20240312.
[arguments]: Disable strip-binaries? and validate-runpath? flags but keep the
corresponding build phases.
(select-firmware): Handle the new RawFile keyword.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Guix added linux-libre@6.8 in f6f4c71df5558b168fe7a313522af7ea5fe2d0dc but it
is not set as the default yet.
* nongnu/packages/linux.scm (linux-6.8): New variable.
Upstream Guix defaulted to linux-libre@6.7 in commit
001dfb89579856b8695b33b59f484f36e313347f. Do likewise here.
Also, update my copyright header from previous year as well.
* nongnu/packages/linux.scm (linux): Set to linux-6.7.
This fixes an issue where corrupt-linux would use the kernel config from the
wrong version. The reason is that the package phases in customize-linux come
from inheriting the package in the 'linux' keyword argument, defaulting to
linux-libre. The kernel configuration comes in the configure phase. Since we
did not use this in the customize-linux in corrupt-linux, we would be using
the wrong configuration. For example, linux-6.7 would be built with the
linux-libre-6.6 kernel config rather than linux-libre-6.7, missing the new
CONFIG_BCACHEFS_FS option. Presumably all of our kernels were trying to use
the default linux-libre version kernel config rather than the correct one to
match their version. This should fix that.
* nongnu/packages/linux.scm (corrupt-linux): Use the 'linux' keyword argument
in customize-linux.
Reported-by: reedm and yelninei on the #nonguix IRC channel.
In order to be able to use WiFi chip in P14s ThinkPad, the mt7921e module is
required. This commit enables it in kernels that do have it.
I originally implemented this using a list of additional option, same way
%default-extra-linux-options is done. However I quickly realized that
approach is not suitable for hardware enablement. The older versions do not
support the same drivers as the newer ones.
Solution is to create a new procedure that generates the list for a specific
kernel version and use it as a default value for #:configs.
* nongnu/packages/linux.scm (nonguix-extra-linux-options): New procedure.
(corrupt-linux): Use it as default value for #:configs.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Upstream added linux-libre@6.7 in 95a3aaf7ad37bb0717f2c9e3faf6f636b586d133 but
it is not yet the default.
* nongnu/packages/linux.scm (linux-6.7): New variable.
* nongnu/packages/linux.scm (%default-extra-linux-options,config->string):
Move into make-linux-xanmod.
(make-linux-xanmod): Adjust comments.
Move the base kernel produced by customize-linux out of let form.
[native-inputs]: Use prepend instead of append.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (make-linux-xanmod-source): Patch upstream linux
source instead of downloading the auto-generated tarball from GitLab.
(make-linux-xanmod)[arguments]<#:phases>: Delete 'remove-localversion, moved
to snippet.
(linux-xanmod-source,linux-xanmod-lts-source): Adjust accordingly.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
Fixes build with newer kernel version.
* nongnu/packages/linux.scm (r8168-linux-module): Update to 8.052.01.
[arguments]: Remove phases to fix build as proper fix is now in upstream.