Andrew Gundersen [Fri, 17 Jul 2026 19:54:46 +0000 (19:54 +0000)]
Fix 5 bugs found via dry-run provision of a real Linode
- spamd, not spamassassin, is the actual systemd unit name
- /etc/chasquid/certs ships non-empty by default (README.certs), breaking
the symlink-to-certs-orig conversion
- /etc/letsencrypt/renewal-hooks/deploy doesn't exist until certbot has
actually run once - can't assume it from just installing the package
- Ubuntu's default nginx site conflicts with our own default_server
- chasquid task ordering: domains/certs must exist before chasquid.conf
is deployed (and its restart triggered), or chasquid crash-loops fast
enough to hit systemd's restart backoff before domains/ gets populated
a moment later - reproduces the exact bug from the start of this project