{
  lib,
  config,
  ...
}: let
  inherit (lib) mkEnableOption mkIf;
  cfg = config.horseman.timers.backup;
in {
  options = {
    horseman.timers.backup = {
      enable = mkEnableOption "Enables the backup service";
    };
  };

  config = mkIf cfg.enable {
    systemd.timers."backup" = {
      wantedBy = ["timers.target"];
      timerConfig = {
        OnCalendar = "daily";
        Persistent = true;
      };
    };

    systemd.services."backup" = {
      script = ''
        /home/horseman/nix-config/misc/backup.sh
      '';
      serviceConfig = {
        Type = "oneshot";
        User = "root";
      };
    };
  };
}
