diff options
Diffstat (limited to 'modules/root/grub.nix')
-rw-r--r-- | modules/root/grub.nix | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/modules/root/grub.nix b/modules/root/grub.nix new file mode 100644 index 0000000..47227d1 --- /dev/null +++ b/modules/root/grub.nix @@ -0,0 +1,26 @@ +{ lib, config, ... }: { + options = { + grub.enable = lib.mkEnableOption "enables docker"; + grub.mode = lib.mkOption { + type = lib.types.enum [ "efi" "bios" ]; + default = "efi"; + description = "grub mode efi or bios"; + }; + grub.biosDevice = lib.mkOption { + type = lib.types.str; + description = "device to install grub on"; + }; + }; + + config = lib.mkIf config.grub.enable { + boot.loader = { + grub = { + enable = true; + efiSupport = config.grub.mode == "efi"; + efiInstallAsRemovable = config.grub.mode == "efi"; + device = if config.grub.mode == "bios" then config.grub.biosDevice else "nodev"; + }; + efi.efiSysMountPoint = "/boot/efi"; + }; + }; +} |