1{ lib, pkgs, ... }:
2{
3 systemd.user = {
4 timers.backup-2025 = {
5 wantedBy = lib.singleton "default.target";
6 timerConfig = {
7 OnCalendar = "*:0/5";
8 AccuracySec = "1us";
9 };
10 };
11
12 services.backup-2025 = {
13 path = with pkgs; [
14 rsync
15 openssh
16 ];
17 script = ''
18 SOURCE="/home/cassie/mcservers/season-2025"
19 DESTINATION="backup@koumakan:/home/backup/public/"
20 rsync \
21 -rltH \
22 --rsh="ssh -i $HOME/.ssh/id_backup_koumakan" \
23 --safe-links \
24 --delay-updates \
25 --human-readable --progress \
26 --exclude="*/bluemap/web" \
27 --exclude="*/libraries" \
28 --exclude=".fabric" \
29 --exclude="*.tmp" \
30 --exclude="*/tmp" \
31 --exclude="DistantHorizons.sqlite*" \
32 --verbose \
33 $SOURCE \
34 $DESTINATION
35 '';
36 };
37 };
38}