tighten up h002 data perm cleanup

This commit is contained in:
RingOfStorms (Joshua Bell) 2025-12-31 11:11:56 -06:00
parent fb37ecaa67
commit df184b40e0

View file

@ -20,21 +20,24 @@ lib.mkMerge [
]; ];
# One-shot fixup for existing files after migrations/rsync. # One-shot fixup for existing files after migrations/rsync.
# Runs before `nfs-server` so clients always see correct perms.
systemd.services.nfs-media-permissions = { systemd.services.nfs-media-permissions = {
description = "Fix NFS media permissions"; description = "Fix NFS media permissions";
after = [ "local-fs.target" ]; after = [ "local-fs.target" ];
before = [ "nfs-server.service" ]; before = [ "nfs-server.service" ];
wantedBy = [ "multi-user.target" ]; requiredBy = [ "nfs-server.service" ];
serviceConfig.Type = "oneshot"; serviceConfig.Type = "oneshot";
path = [ pkgs.coreutils pkgs.findutils ]; path = [ pkgs.coreutils pkgs.findutils ];
script = '' script = ''
set -euo pipefail set -euo pipefail
getent group media >/dev/null
for dir in /data/nixarr/media /data/pinchflat/media; do for dir in /data/nixarr/media /data/pinchflat/media; do
mkdir -p "$dir" mkdir -p "$dir"
chgrp -R media "$dir" || true chgrp -R media "$dir"
chmod -R g+rwX "$dir" || true chmod -R g+rwX "$dir"
find "$dir" -type d -print0 | xargs -0 chmod 2775 || true find "$dir" -type d -exec chmod 2775 {} +
done done
''; '';
}; };