• Lucas Werkmeister's avatar
    Notify systemd in daemon-initialized and kill-emacs (Bug#31498) · 19f5f7b1
    Lucas Werkmeister authored
    With --[bg-]daemon and Type=forking, systemd will only consider the
    daemon to have fully started up once the original process exits, and
    will wait until then to start units depending on the Emacs service.  To
    get the same functionality with --fg-daemon, use Type=notify instead of
    Type=simple and explicitly send a readiness notification to systemd at
    the point where the forked process would in --bg-daemon mode notify its
    parent process and cause it to exit.  Similarly, notify systemd at the
    beginning of the shutdown process as well.  (Both of these calls are
    successful no-ops if emacs was not started by systemd.)
    * etc/emacs.service: Update Type.
    * src/emacs.c (daemon-initialized) [HAVE_LIBSYSTEMD]:
    * src/emacs.c (kill-emacs) [HAVE_LIBSYSTEMD]: Call sd_notify().
emacs.service 560 Bytes