{ ... }: { systemd.tmpfiles.rules = [ "d /persist/user.bak 0755 root root" "d /persist/state.bak 0755 root root" ]; services.btrbk = { ioSchedulingClass = "idle"; niceness = 19; instances = { persist-user = { onCalendar = "hourly"; settings.volume."/persist" = { subvolume = "user"; snapshot_dir = "user.bak"; snapshot_preserve_min = "latest"; snapshot_preserve = "48h 14d 4w 6m"; }; }; persist-state = { onCalendar = "daily"; settings.volume."/persist" = { subvolume = "state"; snapshot_dir = "state.bak"; snapshot_preserve_min = "latest"; snapshot_preserve = "7d 4w 3m"; }; }; }; }; }