{ config, lib, pkgs, ...}: let inherit (lib) mkOption mkEnableOption literalExpression; cfg = config.myOptions.system.boot; in { imports = [ ./secure-boot.nix ./plymouth.nix ]; 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."; }; tmpOnTmpfs = mkEnableOption '' `/tmp` living on tmpfs. false means it will be cleared manually on each reboot This option defaults to `true` if the host provides patches to the kernel package in `boot.kernelPatches` ''; silentBoot = mkEnableOption '' almost entirely silent boot process through `quiet` kernel parameter '' // { default = cfg.plymouth.enable; }; }; }