summaryrefslogtreecommitdiff
path: root/modules/grub.nix
diff options
context:
space:
mode:
authorTim Keller <tjk@tjkeller.xyz>2024-10-02 21:29:37 -0500
committerTim Keller <tjk@tjkeller.xyz>2024-10-02 21:29:37 -0500
commit34b0bb8df42194a0ea433592e3cac27546f0af4e (patch)
treef584369db3a6accb74b1a9288c2480f8fd411671 /modules/grub.nix
parent4e4b8068825044ebfd435ec8a6f0e84f5c0c8801 (diff)
downloadnixos-34b0bb8df42194a0ea433592e3cac27546f0af4e.tar.xz
nixos-34b0bb8df42194a0ea433592e3cac27546f0af4e.zip
modularize conf and stuff
Diffstat (limited to 'modules/grub.nix')
-rw-r--r--modules/grub.nix26
1 files changed, 26 insertions, 0 deletions
diff --git a/modules/grub.nix b/modules/grub.nix
new file mode 100644
index 0000000..47227d1
--- /dev/null
+++ b/modules/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";
+ };
+ };
+}