luks: add initrdUnlock option to luks type (#233)

This commit is contained in:
Jon Seager 2023-05-13 08:10:13 +01:00 committed by GitHub
parent 834b7b2a33
commit 13665a836f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -16,6 +16,11 @@
description = "Path to the key for encryption";
example = "/tmp/disk.key";
};
initrdUnlock = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Whether to add a boot.initrd.luks.devices entry for the specified disk.";
};
extraFormatArgs = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
@ -63,11 +68,10 @@
_config = lib.mkOption {
internal = true;
readOnly = true;
default = dev:
[
# TODO do we need this always in initrd and only there?
{ boot.initrd.luks.devices.${config.name}.device = dev; }
] ++ (lib.optional (config.content != null) (config.content._config "/dev/mapper/${config.name}"));
default = dev: [ ]
# If initrdUnlock is true, then add a device entry to the initrd.luks.devices config.
++ (lib.optional config.initrdUnlock [{ boot.initrd.luks.devices.${config.name}.device = dev; }])
++ (lib.optional (config.content != null) (config.content._config "/dev/mapper/${config.name}"));
description = "NixOS configuration";
};
_pkgs = lib.mkOption {