-
-
Notifications
You must be signed in to change notification settings - Fork 13.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
linux: simplify and document kernel customisation #207095
Conversation
Pad a version string with zeros to match a given number of components.
It's redundant with `argsOverride.modDirVersion`.
5572773
to
505215c
Compare
cc @roberth for |
The whole thing is very scuffed and desperately needs a rewrite, but this is an improvement. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll only comment on the nixos test related stuff.
The change is ok with me. I've kept it when converting from argument to option, but it seems like we don't need it, not in nixpkgs at least. Let's add a proper error message for it though, for outside use. See comment.
505215c
to
2f12a53
Compare
It's not used, doesn't build, and seems like the only reason to have `manualConfig` take `stdenv` as an argument.
Reverts NixOS@7c7c83e which was only needed for the minimal-kernel.nix test module and clutters the call site. stdenv can still be overridden with `linuxManualConfig.override { stdenv = ...; }`.
Document the `linux.override` way first, then `linuxManualConfig`. Add a `linux.configEnv` passthru attribute for quickly getting a `make nconfig`-ready shell.
2f12a53
to
a8fd50b
Compare
I'm so appreciate that you provide such a detailed document about building a customized kernel. Recently, I met some problem with building kernel with a different I can set the stdenv for the kernel itself, but I dont know how to set the |
Please don't necro-bump PRs to ask questions. |
Supersedes #178565, addresses #178476.
Fixes
linuxKernel.customPackage { inherit (linux_6_1) src version; ... }
failing becausemodDirVersion
is set to 6.1 instead of 6.1.0 (although we should probably just get rid ofcustomPackage
...).Rendered manual