hosts/skycam: reboot every day

This commit is contained in:
2025-06-26 19:49:45 +01:00
parent c0be9a1c26
commit aacecab4e3

View File

@ -31,7 +31,16 @@
}; };
}; };
systemd.services.skycam-archiver = systemd.services = {
daily-reboot = {
description = "Daily system reboot";
serviceConfig = {
Type = "oneshot";
ExecStart = "/run/current-system/sw/bin/reboot";
Restart = "no";
};
};
skycam-archiver =
let let
snapshotScript = pkgs.writeShellScript "skycam-archiver" '' snapshotScript = pkgs.writeShellScript "skycam-archiver" ''
${pkgs.lib.getExe pkgs.curl} -s -o "/var/lib/skycam-archiver/snapshot-$(date +%Y%m%d-%H%M%S).jpg" "http://skycam.mesh.vimium.net:1984/api/frame.jpeg?src=rpicam" ${pkgs.lib.getExe pkgs.curl} -s -o "/var/lib/skycam-archiver/snapshot-$(date +%Y%m%d-%H%M%S).jpg" "http://skycam.mesh.vimium.net:1984/api/frame.jpeg?src=rpicam"
@ -47,8 +56,18 @@
requires = [ "go2rtc.service" ]; requires = [ "go2rtc.service" ];
after = [ "go2rtc.service" ]; after = [ "go2rtc.service" ];
}; };
};
systemd.timers.skycam-archiver = { systemd.timers = {
daily-reboot = {
description = "Timer for daily system reboot";
wantedBy = [ "timers.target" ];
timerConfig = {
OnCalendar = "*-*-* 03:00:00";
Persistent = false;
};
};
skycam-archiver = {
description = "Timer for capturing skycam snapshots every 30 minutes"; description = "Timer for capturing skycam snapshots every 30 minutes";
wantedBy = [ "timers.target" ]; wantedBy = [ "timers.target" ];
timerConfig = { timerConfig = {
@ -57,6 +76,7 @@
Unit = "skycam-archiver.service"; Unit = "skycam-archiver.service";
}; };
}; };
};
modules.services.borgmatic = { modules.services.borgmatic = {
enable = true; enable = true;