nixos/boot.uki: allow partial overrides of default UKI settings
Previously any user-provided config for boot.uki.settings would need to either specify a full set of config for ukify or a combination of mkOptionDefault to merge the "settings" attribute set with the module's defaults and then mkOverride or mkForce to override a contained attribute. Now it is possible to trivially override parts of the module's default config, such as the initrd or kernel command line, but overriding the full set of settings now requires mkOverride / mkForce.
This commit is contained in:
parent
898c3061fe
commit
ccff749532
1 changed files with 8 additions and 8 deletions
|
@ -51,16 +51,16 @@ in
|
||||||
else
|
else
|
||||||
"nixos");
|
"nixos");
|
||||||
|
|
||||||
boot.uki.settings = lib.mkOptionDefault {
|
boot.uki.settings = {
|
||||||
UKI = {
|
UKI = {
|
||||||
Linux = "${config.boot.kernelPackages.kernel}/${config.system.boot.loader.kernelFile}";
|
Linux = lib.mkOptionDefault "${config.boot.kernelPackages.kernel}/${config.system.boot.loader.kernelFile}";
|
||||||
Initrd = "${config.system.build.initialRamdisk}/${config.system.boot.loader.initrdFile}";
|
Initrd = lib.mkOptionDefault "${config.system.build.initialRamdisk}/${config.system.boot.loader.initrdFile}";
|
||||||
Cmdline = "init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}";
|
Cmdline = lib.mkOptionDefault "init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}";
|
||||||
Stub = "${pkgs.systemd}/lib/systemd/boot/efi/linux${efiArch}.efi.stub";
|
Stub = lib.mkOptionDefault "${pkgs.systemd}/lib/systemd/boot/efi/linux${efiArch}.efi.stub";
|
||||||
Uname = "${config.boot.kernelPackages.kernel.modDirVersion}";
|
Uname = lib.mkOptionDefault "${config.boot.kernelPackages.kernel.modDirVersion}";
|
||||||
OSRelease = "@${config.system.build.etc}/etc/os-release";
|
OSRelease = lib.mkOptionDefault "@${config.system.build.etc}/etc/os-release";
|
||||||
# This is needed for cross compiling.
|
# This is needed for cross compiling.
|
||||||
EFIArch = efiArch;
|
EFIArch = lib.mkOptionDefault efiArch;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue