[ MIRROR ] NixOS & Home-Manager configuration git.ngill.net/dotfiles.git
Something went wrong. Try again.
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374{ pkgs, lib, util, ...}:{ type, device ? "", pkiBundle ? "/var/lib/sbctl", configLimit ? 3,}:let type' = util.assertMsg (builtins.elem type [ "efi" "efi-secure" "bios" "baytrail" ]) type "invalid bootloader type";inlib.mkMerge [ (lib.mkIf (type' == "efi") { boot.loader = { systemd-boot.enable = true; systemd-boot.configurationLimit = configLimit; efi.canTouchEfiVariables = true; timeout = 0; }; })
(lib.mkIf (type' == "efi-secure") { environment.systemPackages = with pkgs; [ sbctl ];
boot.lanzaboote = { inherit pkiBundle; enable = true; };
boot.loader = { systemd-boot.enable = lib.mkForce false; systemd-boot.configurationLimit = configLimit; efi.canTouchEfiVariables = true; timeout = 0; }; })
(lib.mkIf (type' == "bios") { boot.loader = { timeout = 0; grub = { inherit device; enable = true; timeoutStyle = "hidden"; configurationLimit = configLimit; }; }; }) (lib.mkIf (type' == "baytrail") { boot.loader = { efi.canTouchEfiVariables = false; grub = { enable = true; efiSupport = true; efiInstallAsRemovable = true; device = "nodev"; forcei686 = true; configurationLimit = configLimit; }; }; })]