calendar-sync.local.el into common/.emacs.d/ ============================================= Date: 2026-05-13 Machine: laptop (this one) What was done ------------- Added dotfiles/common/.emacs.d/calendar-sync.local.el. The real file lives under common/ and is symlinked back into ~/.emacs.d/ on this machine: ~/.emacs.d/calendar-sync.local.el -> ~/code/archsetup/dotfiles/common/.emacs.d/calendar-sync.local.el A matching template, calendar-sync.local.el.example, was checked into the dotemacs repo so future setups know what shape the file needs to take. The .example file is tracked in dotemacs; calendar-sync.local.el itself is gitignored in dotemacs (entry already present at .gitignore:54). Why --- On 2026-05-04, commit cc594fd ("Make calendar sync startup safe without config") in the dotemacs repo refactored modules/calendar-sync.el to stop hard-coding the calendar feed URLs inline. The new design loads them from a private file at ~/.emacs.d/calendar-sync.local.el. That file is gitignored in dotemacs, so it never propagates across machines via the dotemacs checkout. This laptop never got the file created. M-x calendar-sync-now failed with "calendar-sync: No calendars configured". State file (data/calendar-sync-state.el) showed last successful sync at 2026-05-01 16:57, three days before the refactor landed -- confirming the gap. Putting the file under common/ in archsetup means GNU Stow distributes it the same way every other dotfile is distributed: make stow links it into $HOME on each machine. Heads-up for archsetup ---------------------- The file contains real private .ics feed URLs (Google personal, Proton, Google work). It is currently TRACKED in archsetup -- .gitignore was not modified to exclude it, because the whole point of putting it under common/ is for it to flow to other machines via git pull + make restow. The archsetup remote is git@cjennings.net:archsetup.git only -- your private server, no public mirror -- so exposure is bounded to that host. Same URLs are already in dotemacs git history on both cjennings.net and the github.com mirror anyway (from cc594fd^). The dotemacs URLs were left in place by choice. If you ever change your mind on tracking, the move is: 1. Regenerate the .ics secret addresses in each calendar's UI. 2. Add dotfiles/common/.emacs.d/calendar-sync.local.el to archsetup/.gitignore. 3. Distribute the file out-of-band (manual copy, age-encrypted, pass, whatever). While here: inbox/ was root-owned (since 2026-04-10) and unwritable as cjennings, blocking note creation. Ran: sudo chown -R cjennings:cjennings ~/code/archsetup/inbox/ to normalize. No idea what set it to root originally -- probably a sudo-driven install step. Worth flagging if it returns. Action items ------------ - Decide whether to commit common/.emacs.d/calendar-sync.local.el in archsetup (recommended) or pull it into a separate private channel. - On every other machine: pull archsetup, run `make restow `, restart Emacs. The symlink should appear and the next M-x calendar-sync-now will work.