about summary refs log tree commit diff stats
path: root/modules/by-name
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-10-20 20:31:40 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2025-10-20 20:31:40 +0200
commit75f149b358808c941a04a7efc3fff2697bed5c61 (patch)
treef7afc35f78e788857cb2528476aa10f6f82f0e6c /modules/by-name
parentmodules/river/keymap: Make moving/resizing toplevels possible (diff)
downloadnixos-config-75f149b358808c941a04a7efc3fff2697bed5c61.zip
modules/impermanence: Make it easier do define user directories
Diffstat (limited to '')
-rw-r--r--modules/by-name/ia/iamb/module.nix2
-rw-r--r--modules/by-name/im/impermanence/module.nix17
2 files changed, 17 insertions, 2 deletions
diff --git a/modules/by-name/ia/iamb/module.nix b/modules/by-name/ia/iamb/module.nix
index 96f26fd1..ef46f5e0 100644
--- a/modules/by-name/ia/iamb/module.nix
+++ b/modules/by-name/ia/iamb/module.nix
@@ -20,7 +20,7 @@ in {
   };
 
   config = lib.mkIf cfg.enable {
-    environment.persistence.users.soispha.directories = [
+    soispha.impermanence.userDirectories = [
       ".config/iamb/profiles"
     ];
 
diff --git a/modules/by-name/im/impermanence/module.nix b/modules/by-name/im/impermanence/module.nix
index 932dd658..78ad570f 100644
--- a/modules/by-name/im/impermanence/module.nix
+++ b/modules/by-name/im/impermanence/module.nix
@@ -31,6 +31,21 @@ in {
       }));
       description = "The directories to persist";
     };
+
+    userDirectories = lib.mkOption {
+      type = lib.types.listOf (lib.types.either lib.types.str (lib.types.submodule {
+        options = {
+          directory = lib.mkOption {
+            type = lib.types.str;
+          };
+          mode = lib.mkOption {
+            type = lib.types.str;
+          };
+        };
+      }));
+      default = [];
+      description = "The directories to persist";
+    };
   };
 
   imports = [
@@ -59,7 +74,7 @@ in {
             "media"
             "repos"
             "documents"
-          ];
+          ] ++ cfg.userDirectories;
         };
 
         files = [