On 11/29/2021 5:40 AM, Gregory Heytings wrote: > > I'm in the process of implementing something that should satisfy > everyone, but it's not finished yet. Thanks. Hopefully my proposal helps to explain more precisely my mental model and how I'd like things to work. If there's anything that's not clear, just let me know and I'll try to elaborate on it. In case it would help, I've also attached the relevant bits of my Emacs configuration, which implements the Explicit Shutdown behavior I've described. Overall, it's similar to the first patch I posted in this bug, but it's usable in Emacs 27+ (maybe even earlier). However, I think it has (at least) one problem: if `server-buffer-done' (indirectly called by `server-edit' / `C-x #') deletes the last client, it doesn't stop the daemon. I haven't had a chance to look into this in detail yet though. I think the most consistent behavior would be to stop the daemon in this case, since then the logic is simply "stop the daemon when the last client would be deleted", and we don't have to worry about exceptions to that rule.