feat: add Git-annex module

This commit is contained in:
Madeleine Sydney
2025-01-23 14:08:56 -07:00
parent f4924eeb59
commit fbd7553bc6
8 changed files with 262 additions and 70 deletions

View File

@@ -41,6 +41,16 @@ in
type = lib.types.str;
default = "${cfg.root}/${name}";
};
user = lib.mkOption {
type = lib.types.nullOr lib.types.str;
description = "The owning user of the host's root directory.";
default = cfg.user;
};
group = lib.mkOption {
type = lib.types.nullOr lib.types.str;
description = "The owning group of the host's root directory.";
default = cfg.group;
};
vhostName = lib.mkOption {
type = lib.types.str;
default = "${name}.deertopia.net";
@@ -98,22 +108,22 @@ in
# };
# };
system.activationScripts.initialiseDeertopiaRoot.text =
let
directories =
builtins.catAttrs "directory" (builtins.attrValues cfg.vhosts);
inherit (cfg) root group user;
in ''
mkdir -p "${root}"
chown -R "${user}:${group}" "${root}"
chmod -R 775 "${root}"
# system.activationScripts.initialiseDeertopiaRoot.text =
# let
# # FIXME: Use `lib.strings.toShellVar`.
# inherit (cfg) root group user;
# in ''
# mkdir -p "${root}"
# chown -R "${user}:${group}" "${root}"
# chmod -R 775 "${root}"
dirs=(${builtins.concatStringsSep " " (map (x: "'${x}'") directories)})
for i in "''${dirs[@]}"; do
mkdir -p "$i"
chown -R "${user}:${group}" "$i"
chmod -R 775 "$i"
done
'';
# ${lib.toShellVar "dirs"
# (builtins.catAttrs "directory" (builtins.attrValues cfg.vhosts))}
# for i in "''${dirs[@]}"; do
# mkdir -p "$i"
# chown -R "${user}:${group}" "$i"
# chmod -R 775 "$i"
# done
# '';
};
}