#+TITLE: New systemd user units — roam KB git auto-sync (consider dotfiles adoption) #+DATE: 2026-06-10 * What happened The org-roam KB moved from the ~/sync/org Syncthing share to a git repo (git@cjennings.net:roam.git, checkout ~/org/roam) — rulesets agent-knowledge-base spec, decision D8. * New units on this machine ~/.config/systemd/user/roam-sync.{service,timer} — every 15 minutes: commit local roam edits, pull --rebase, push. Canonical copies live in rulesets at scripts/systemd/, and the script is scripts/roam-sync.sh (bats-tested). A monthly roam-hygiene timer is being added in the same change set. * Asks 1. Consider adopting the unit files into the stow dotfiles so they reach other machines automatically. 2. Each other personal machine needs a one-time setup: clone git@cjennings.net:roam.git to ~/org/roam, then copy + enable the units (cp ~/code/rulesets/scripts/systemd/roam-sync.* ~/.config/systemd/user/ && systemctl --user daemon-reload && systemctl --user enable --now roam-sync.timer). Note: Syncthing will have already replaced each machine's ~/sync/org/roam with a symlink pointing at ~/org/roam, so Emacs there is broken on the old path until the clone lands. The work machine deliberately gets no clone.