2024-07-26 23:07:07 +00:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: let
|
2024-04-12 18:57:52 +00:00
|
|
|
inherit (lib) mkOption mkEnableOption literalExpression;
|
|
|
|
|
|
|
|
cfg = config.myOptions.system.boot;
|
|
|
|
in {
|
|
|
|
imports = [
|
|
|
|
./secure-boot.nix
|
2024-04-12 21:28:50 +00:00
|
|
|
./plymouth.nix
|
2024-04-12 18:57:52 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
options.myOptions.system.boot = {
|
|
|
|
kernel = mkOption {
|
|
|
|
type = with lib.types; nullOr raw;
|
|
|
|
default = pkgs.linuxPackages_latest;
|
|
|
|
example = literalExpression "pkgs.linuxPackages_latest";
|
|
|
|
description = "The kernel to use for the system.";
|
|
|
|
};
|
|
|
|
|
2024-07-26 23:07:07 +00:00
|
|
|
tmpOnTmpfs = mkEnableOption ''
|
|
|
|
`/tmp` living on tmpfs. false means it will be cleared manually on each reboot
|
2024-04-12 18:57:52 +00:00
|
|
|
|
2024-07-26 23:07:07 +00:00
|
|
|
This option defaults to `true` if the host provides patches to the kernel package in
|
|
|
|
`boot.kernelPatches`
|
|
|
|
'';
|
2024-04-12 22:07:53 +00:00
|
|
|
|
2024-07-26 23:07:07 +00:00
|
|
|
silentBoot =
|
|
|
|
mkEnableOption ''
|
|
|
|
almost entirely silent boot process through `quiet` kernel parameter
|
|
|
|
''
|
|
|
|
// {default = cfg.plymouth.enable;};
|
2024-04-12 18:57:52 +00:00
|
|
|
};
|
|
|
|
}
|