Backs up a list of host folders through dropshell's restic path. No
container and nothing running — the service is a folder list that gives
ds backup something to point at, for host data no other service owns.
Folders go in service.env as /abs/path or label=/abs/path, with optional
restic exclude patterns. Derived labels come from the whole path rather than
the basename, so they cannot collide and a snapshot says where its contents
came from. A folder that has gone missing fails the backup rather than being
skipped, since the agent would otherwise mount an empty directory over it and
store nothing where the data used to be.
Restore never writes over the original: it writes <folder>.restored and
leaves the comparison to a human. Restoring in place would delete anything
added since the snapshot, plus everything BACKUP_EXCLUDES deliberately kept
out of it — for live host folders that is rarely what anyone wants, and the
worst case here is wasted disk instead of lost data.
Adds listbackups and restorefolder for recovering a single folder from any
snapshot. Both read credentials from CONFIG_PATH/restic.env, as ds run passes
no environment of its own.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Camera restreamer — pulls RTSP/ONVIF feeds once and re-serves as RTSP/WebRTC/MSE/HLS. Keeps camera credentials on-site and gives a remote Frigate one stable address per stream