summaryrefslogtreecommitdiff
path: root/machines/xnet/persist.nix
diff options
context:
space:
mode:
authorKleidi Bujari <mail@4kb.net>2025-04-02 21:59:20 -0400
committerKleidi Bujari <mail@4kb.net>2025-04-02 21:59:20 -0400
commit09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52 (patch)
treebd8f1d3a51f12cd98764ae572b00f0b32de62644 /machines/xnet/persist.nix
parentb1738c105de3bc0ba7cd27f68c9eb146439a0964 (diff)
downloaddepot-09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52.tar.gz
depot-09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52.tar.bz2
depot-09c2b6de63a6ff35348fcb2c2eb57b974f0a8a52.zip
automate project structure
Diffstat (limited to 'machines/xnet/persist.nix')
-rw-r--r--machines/xnet/persist.nix61
1 files changed, 0 insertions, 61 deletions
diff --git a/machines/xnet/persist.nix b/machines/xnet/persist.nix
deleted file mode 100644
index 10eb883..0000000
--- a/machines/xnet/persist.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ config, lib, ... }:
-let
- inherit (lib)
- concatLists
- isString
- mkOption
- types
- ;
-
-in
-{
- options.xnet.persist = mkOption {
- type = types.listOf (types.either
- types.str
- (types.submodule {
- options = {
- path = mkOption {
- type = types.str;
- description = "Path to persist";
- };
- user = mkOption {
- type = types.nullOr types.str;
- default = null;
- description = "User ID to set on the persisted directory";
- };
- group = mkOption {
- type = types.nullOr types.str;
- default = null;
- description = "Group ID to set on the persisted directory";
- };
-
- mode = mkOption {
- type = types.nullOr types.str;
- default = null;
- description = "Permissions to set";
- };
- };
- }));
- default = [ ];
- description = "Automatically persisted state.";
- };
-
- config.systemd.tmpfiles.rules =
- let
- mkEntry = entry:
- let
- path = if isString entry then entry else entry.path;
- user = if isString entry then "-" else entry.user;
- group = if isString entry then "-" else entry.group;
- mode = if isString entry then "-" else entry.mode;
-
- dent = "d /persist${path} ${mode} ${user} ${group} - -";
- link = "L+ ${path} - - - - /persist${path}";
- perm = "Z ${mode} ${user} ${group} - -";
- in
- [ dent link perm ];
-
- entries = map mkEntry config.xnet.persist;
- in
- concatLists entries;
-}