From c153a351659e4596acfc31f00bf594343cbfcd68 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Thu, 30 Jul 2026 14:05:39 +0200 Subject: modules: Use namespaces That might make it easier in the future to merge different server configs together (and thusly facilitate code-reuse.). --- modules/vhack/im/impermanence/module.nix | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 modules/vhack/im/impermanence/module.nix (limited to 'modules/vhack/im') diff --git a/modules/vhack/im/impermanence/module.nix b/modules/vhack/im/impermanence/module.nix new file mode 100644 index 0000000..1c916e2 --- /dev/null +++ b/modules/vhack/im/impermanence/module.nix @@ -0,0 +1,30 @@ +{ + config, + lib, + ... +}: let + cfg = config.vhack.persist; +in { + options.vhack.persist = { + enable = lib.mkEnableOption "impermanence"; + + directories = lib.mkOption { + description = "The list of directories to persist"; + type = lib.types.listOf (lib.types.coercedTo lib.types.str (d: {directory = d;}) (lib.types.attrsOf lib.types.anything)); + }; + }; + + config = lib.mkIf cfg.enable { + environment.persistence."/srv" = { + hideMounts = true; + directories = + [ + "/etc/nixos" + ] + ++ cfg.directories; + files = [ + "/etc/machine-id" + ]; + }; + }; +} -- cgit v1.3.1