mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-14 18:40:55 -06:00
77 lines
2.2 KiB
Nix
Executable file
77 lines
2.2 KiB
Nix
Executable file
{ flake, ... }:
|
|
let
|
|
inherit (import ../helpers.nix { inherit flake; }) labHelpers nasUsers;
|
|
inherit (labHelpers)
|
|
guestPath
|
|
mediaPath
|
|
docsPath
|
|
homePath
|
|
miscPath
|
|
userPath
|
|
groupPath
|
|
mntPath
|
|
;
|
|
|
|
nasDirs = user: [
|
|
"d ${userPath user} 0751 microvm wheel - -"
|
|
"d ${homePath user} 0751 microvm wheel - -"
|
|
"d ${guestPath user} 0751 microvm wheel - -"
|
|
"d ${docsPath user} 0751 microvm wheel - -"
|
|
"d ${mediaPath user} 0751 microvm wheel - -"
|
|
"d ${miscPath user} 0751 microvm wheel - -"
|
|
];
|
|
|
|
nasUserList = [
|
|
nasUsers.nasUser0
|
|
nasUsers.nasUser1
|
|
nasUsers.nasUser2
|
|
];
|
|
|
|
nasDirBuilder = builtins.concatLists (builtins.map (user: nasDirs user) nasUserList);
|
|
|
|
defaultDirs = [
|
|
"d ${mntPath} 0751 microvm wheel - -"
|
|
"d ${groupPath} 0751 microvm wheel - -"
|
|
];
|
|
in
|
|
{
|
|
systemd.tmpfiles.rules = defaultDirs ++ nasDirBuilder;
|
|
}
|
|
|
|
# /storage/ # restic backup for entire dir
|
|
# ├── users/
|
|
# │ ├── nick/
|
|
# │ │ ├── home/ # mountable over samba/sshfs
|
|
# │ │ │ ├── docs/ # paperless user datadir
|
|
# │ │ │ ├── media/ # photoprism user datadir
|
|
# │ │ │ └── misc/ # files not used by any guests
|
|
# │ │ └── guests/ # guest dirs (users should never have to see this)
|
|
# │ │ ├── firefly-iii/
|
|
# │ │ │ ├── config/ # app config
|
|
# │ │ │ └── data/ # app data
|
|
# │ │ ├── glance/
|
|
# │ │ ├── photoprism/
|
|
# │ │ ├── syncthing/
|
|
# │ │ └── vaultwarden/
|
|
# │ ├── stacie/
|
|
# │ │ ├── home/
|
|
# │ │ │ ├── docs/
|
|
# │ │ │ └── media/
|
|
# │ │ └── guests/
|
|
# │ │ ├── paperless/
|
|
# │ │ ├── photoprism/
|
|
# │ │ ├── syncthing/
|
|
# │ │ └── vaultwarden/
|
|
# │ └── garnet/
|
|
# │ ├── home/
|
|
# │ │ ├── docs/
|
|
# │ │ ├── media/
|
|
# │ │ └── minecraft/
|
|
# │ └── guests/
|
|
# │ ├── paperless/
|
|
# │ ├── photoprism/
|
|
# │ ├── syncthing/
|
|
# │ └── vaultwarden/
|
|
# └── shared/
|
|
# ├── frigate/
|
|
# └── home-assistant/
|