summaryrefslogtreecommitdiff
path: root/bin/systemd
diff options
context:
space:
mode:
authorskylar <me@casper>2026-11-01 07:03:26 -0800
committerskylar <me@casper>2026-11-01 07:03:26 -0800
commit070a107873440d62b4519e6d91c2ba739d4b6fa2 (patch)
treeae4e1c3540cdd01b3289ed6f96ec3ea69507f73e /bin/systemd
Literate Doom Emacs configuration
config.org tangles to config.el, which loads private/config.el last when it exists. bin/ holds the scripts some sections drive. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'bin/systemd')
-rw-r--r--bin/systemd/docsync-backup.service8
-rw-r--r--bin/systemd/docsync-backup.timer10
-rw-r--r--bin/systemd/docsync-check.service8
-rw-r--r--bin/systemd/docsync-check.timer10
-rw-r--r--bin/systemd/docsync-forget.service8
-rw-r--r--bin/systemd/docsync-forget.timer10
6 files changed, 54 insertions, 0 deletions
diff --git a/bin/systemd/docsync-backup.service b/bin/systemd/docsync-backup.service
new file mode 100644
index 0000000..1c83da8
--- /dev/null
+++ b/bin/systemd/docsync-backup.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=docsync: encrypted hourly backup
+
+[Service]
+Type=oneshot
+ExecStart=%h/.local/bin/docsync backup
+Nice=10
+IOSchedulingClass=idle
diff --git a/bin/systemd/docsync-backup.timer b/bin/systemd/docsync-backup.timer
new file mode 100644
index 0000000..0ad450c
--- /dev/null
+++ b/bin/systemd/docsync-backup.timer
@@ -0,0 +1,10 @@
+[Unit]
+Description=docsync: hourly backup
+
+[Timer]
+OnCalendar=hourly
+RandomizedDelaySec=5min
+Persistent=true
+
+[Install]
+WantedBy=timers.target
diff --git a/bin/systemd/docsync-check.service b/bin/systemd/docsync-check.service
new file mode 100644
index 0000000..c577352
--- /dev/null
+++ b/bin/systemd/docsync-check.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=docsync: verify the backup repository
+
+[Service]
+Type=oneshot
+ExecStart=%h/.local/bin/docsync check
+Nice=10
+IOSchedulingClass=idle
diff --git a/bin/systemd/docsync-check.timer b/bin/systemd/docsync-check.timer
new file mode 100644
index 0000000..ae9d03e
--- /dev/null
+++ b/bin/systemd/docsync-check.timer
@@ -0,0 +1,10 @@
+[Unit]
+Description=docsync: monthly repository check
+
+[Timer]
+OnCalendar=monthly
+RandomizedDelaySec=1h
+Persistent=true
+
+[Install]
+WantedBy=timers.target
diff --git a/bin/systemd/docsync-forget.service b/bin/systemd/docsync-forget.service
new file mode 100644
index 0000000..72efeb9
--- /dev/null
+++ b/bin/systemd/docsync-forget.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=docsync: thin out old snapshots and free their space
+
+[Service]
+Type=oneshot
+ExecStart=%h/.local/bin/docsync forget
+Nice=10
+IOSchedulingClass=idle
diff --git a/bin/systemd/docsync-forget.timer b/bin/systemd/docsync-forget.timer
new file mode 100644
index 0000000..548669d
--- /dev/null
+++ b/bin/systemd/docsync-forget.timer
@@ -0,0 +1,10 @@
+[Unit]
+Description=docsync: weekly snapshot thinning
+
+[Timer]
+OnCalendar=weekly
+RandomizedDelaySec=1h
+Persistent=true
+
+[Install]
+WantedBy=timers.target