Files
moho/src
Salastil e2c305e3fb Adopt a running daemon instead of always spawning one
moho spawned nobilis unconditionally, which meant launching a second copy that
lost the flock race and exited - a pointless process launch and log noise on
every start. It now checks the socket first and attaches to whatever is
already listening, so a daemon started by hand, by a systemd unit, or by
another frontend is used as-is.

Stopping had the matching gap: an adopted daemon has no child handle to
signal. Quitting now asks it to stop over the socket (nobilis's new `shutdown`
method) and waits for the socket to go quiet before exiting, rather than
cutting short the QUITs nobilis sends to every connected network - a bare kill
leaves ghost sessions holding nicks until the server's ping timeout notices.
That needed before-quit rather than will-quit, which is synchronous and too
early to wait on anything.

The tray gains an explicit "Stop daemon". Disconnecting every account is worth
asking for deliberately rather than making it a side effect of closing a
window.
2026-08-21 22:41:13 -04:00
..