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.
Upstream Guix defaults to linux-libre@6.5. Follow suit by making linux track
linux@6.5.
* nongnu/packages/linux.scm (linux): Update to linux-6.5.
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Adding linux@6.5 but not changing the default linux to this version until
upstream does as well.
* nongnu/packages/linux.scm (linux-6.5): New variable.
Co-authored-by: John Kehayias <john.kehayias@protonmail.com>
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Fixes CVE-2022-40982, CVE-2022-41804 and CVE-2023-23908.
* nongnu/packages/linux.scm (intel-microcode): Update to 20230808.
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
Adding linux@6.4 but not changing the default linux to this version until
upstream does as well.
* nongnu/packages/linux.scm (linux-6.4): New variable.
* nongnu/packages/linux.scm (linux-xanmod-lts-version,linux-xanmod-lts-source):
Update to 6.1.38.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-xanmod-version,linux-xanmod-source): Update
to 6.4.3.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
* nongnu/packages/linux.scm (linux-xanmod-lts-version)
(linux-xanmod-lts-revision,linux-xanmod-lts-source,linux-xanmod-lts): New
variables.
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>