From ce38133328292ce9e44442a8021049fc8a322e95 Mon Sep 17 00:00:00 2001 From: Isabella Bastaja Date: Tue, 18 Aug 2026 11:33:47 +0200 Subject: headscale backup: only keep last five backups --- hosts/sagittarius/headscale.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/hosts/sagittarius/headscale.nix b/hosts/sagittarius/headscale.nix index 9a09590..05c5e5e 100644 --- a/hosts/sagittarius/headscale.nix +++ b/hosts/sagittarius/headscale.nix @@ -69,9 +69,17 @@ in ]; enableStrictShellChecks = true; script = '' + #!/usr/bin/env bash + set -euo pipefail + [ ! -d /var/lib/backup/headscale ] && mkdir -p /var/lib/backup/headscale TIMESTAMP="$(date +%Y%m%d%H%M%S)" tar cvf "/var/lib/backup/headscale/$TIMESTAMP.backup.tar" /var/lib/headscale + + find /var/lib/backup/headscale -type f -name '*.backup.tar' -print0 | + sort --zero-terminated --reverse | + tail --zero-terminated --lines=+6 | + xargs --null --no-run-if-empty rm -- ''; postStop = "systemctl start headscale.service"; }; -- cgit v1.3.1