49 lines
1.3 KiB
Nix
49 lines
1.3 KiB
Nix
{ pkgs, ... }:
|
|
|
|
with pkgs.lib;
|
|
|
|
{
|
|
options.boot.loader.efi = {
|
|
canTouchEfiVariables = mkOption {
|
|
default = false;
|
|
|
|
type = types.bool;
|
|
|
|
description = "Whether or not the installation process should modify efi boot variables.";
|
|
};
|
|
|
|
efibootmgr = {
|
|
efiDisk = mkOption {
|
|
default = "/dev/sda";
|
|
|
|
type = types.string;
|
|
|
|
description = "The disk that contains the EFI system partition.";
|
|
};
|
|
|
|
efiPartition = mkOption {
|
|
default = "1";
|
|
description = "The partition number of the EFI system partition.";
|
|
};
|
|
|
|
postEfiBootMgrCommands = mkOption {
|
|
default = "";
|
|
type = types.string;
|
|
description = ''
|
|
Shell commands to be executed immediately after efibootmgr has setup the system EFI.
|
|
Some systems do not follow the EFI specifications properly and insert extra entries.
|
|
Others will brick (fix by removing battery) on boot when it finds more than X entries.
|
|
This hook allows for running a few extra efibootmgr commands to combat these issues.
|
|
'';
|
|
};
|
|
};
|
|
|
|
efiSysMountPoint = mkOption {
|
|
default = "/boot";
|
|
|
|
type = types.string;
|
|
|
|
description = "Where the EFI System Partition is mounted.";
|
|
};
|
|
};
|
|
}
|