Adds a webhook-deploy service that listens for Codeberg push events and
triggers per-site nixos-rebuild runs. Skips rebuilds if the flake lock
revision is unchanged. Fixes root SSH client config so nix flake update
can reach Codeberg using the existing deploy key.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Runs the relay on localhost:8880, proxied publicly via Caddy at
wss://relay.otherwhere.app. Allows event kinds 0, 3, 37515, 37518.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>