diff --git a/nix/configuration/configuration.nix b/nix/configuration/configuration.nix index b48cb45..9e4b913 100644 --- a/nix/configuration/configuration.nix +++ b/nix/configuration/configuration.nix @@ -48,6 +48,7 @@ ./roles/lvfs ./roles/media ./roles/memtest86 + ./roles/minimal_base ./roles/network ./roles/nix_index ./roles/nix_worker diff --git a/nix/configuration/hosts/recovery/default.nix b/nix/configuration/hosts/recovery/default.nix index 7611360..6cf1ed6 100644 --- a/nix/configuration/hosts/recovery/default.nix +++ b/nix/configuration/hosts/recovery/default.nix @@ -48,15 +48,7 @@ # services.fstrim.enable = lib.mkDefault true; me.build_in_ram.enable = true; - me.doas.enable = true; - me.network.enable = true; - me.nvme.enable = true; + me.minimal_base.enable = true; me.recovery.enable = true; - me.ssh.enable = true; - me.sshd.enable = true; - me.user.enable = true; - me.zfs.enable = true; - me.zrepl.enable = true; - me.zsh.enable = true; }; } diff --git a/nix/configuration/roles/minimal_base/default.nix b/nix/configuration/roles/minimal_base/default.nix new file mode 100644 index 0000000..3bcaed1 --- /dev/null +++ b/nix/configuration/roles/minimal_base/default.nix @@ -0,0 +1,31 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + imports = [ ]; + + options.me = { + minimal_base.enable = lib.mkOption { + type = lib.types.bool; + default = false; + example = true; + description = "Whether we want to install minimal_base."; + }; + }; + + config = lib.mkIf config.me.minimal_base.enable { + me.doas.enable = true; + me.network.enable = true; + me.nvme.enable = true; + me.ssh.enable = true; + me.sshd.enable = true; + me.user.enable = true; + me.zfs.enable = true; + me.zrepl.enable = true; + me.zsh.enable = true; + }; +}