diff options
-rw-r--r-- | machines/oxo/configuration.nix | 3 | ||||
-rw-r--r-- | modules/git/timer-backup.nix | 26 | ||||
-rw-r--r-- | modules/git/timer-update-timestamps.nix (renamed from modules/git/cron.nix) | 0 |
3 files changed, 28 insertions, 1 deletions
diff --git a/machines/oxo/configuration.nix b/machines/oxo/configuration.nix index c51d052..148d826 100644 --- a/machines/oxo/configuration.nix +++ b/machines/oxo/configuration.nix @@ -10,7 +10,8 @@ "compromyse.nix" "git/user.nix" "git/cgit.nix" - "git/cron.nix" + "git/timer-update-timestamps.nix" + # "git/timer-backup.nix" ]); networking.hostName = "oxo"; diff --git a/modules/git/timer-backup.nix b/modules/git/timer-backup.nix new file mode 100644 index 0000000..42c227d --- /dev/null +++ b/modules/git/timer-backup.nix @@ -0,0 +1,26 @@ +{ config, lib, pkgs, ... }: + +{ + systemd.timers."backup-repositories" = { + wantedBy = [ "timers.target" ]; + timerConfig = { + OnCalendar = "daily"; + Persistent = true; + Unit = "backup-repositories.service"; + }; + }; + + systemd.services."backup-repositories" = { + script = '' + mkdir -p $HOME/backups + + REPOSITORIES=$(find /home/git/* -name '*.git' -type d) + + ''; + + serviceConfig = { + Type = "oneshot"; + User = "git"; + }; + }; +} diff --git a/modules/git/cron.nix b/modules/git/timer-update-timestamps.nix index acb27bd..acb27bd 100644 --- a/modules/git/cron.nix +++ b/modules/git/timer-update-timestamps.nix |