Commit Graph

3 Commits

Author SHA1 Message Date
graysky
34515c3338 Consistent behavior on a systemctl stop vs reboot
If I call systemctl to shutdown or reboot, the effect is that it does
not honor kodi-x11.service's ExecStop= line which results in an
unclean exit of kodi and of data loss since kodi writes out some data
when it exits.  By contrast, calling systemctl to stop the service
works as expected.

It seems systemd treats processes in user.slice differently that those
in system.slice and that removing PAMName=login was to blame for kodi's
processes running in user.slice.

Discussion:
https://lists.freedesktop.org/archives/systemd-devel/2020-December/045713.html
https://bbs.archlinux.org/viewtopic.php?id=261684
2020-12-16 13:32:25 -05:00
graysky
29b2b65590 restore call to kodi-standalone, fixes #26
Calling the kodi-xxx target in ExecStart= was not actually the key to
fixing the shutdown bugs in 847b6ec65. Adding the ExecStop= calling
killall to the exact target was needed.

This commit restores the call to kodi-standalone to allow the
"RestartApp" built in to work again and adds the key ExecStop= with
killall.
2020-11-08 08:30:46 -05:00
graysky
847b6ec656 better ExecStop to cleanly exit fixes #23 and #24
Direct call to kodi-xxx in ExecStart= allows direction of kill signal to that
rather than to kodi-standalone wrapper.  This allows the kill signal to hit
the indented executable.  As well, using killall in the ExecStop= allows for
synchronous stopping and for kodi to do shutdown housekeeping tasks such as
saving settings, stopping services (web, zeroconf, etc.) and unloading things.
2020-10-24 14:52:18 -04:00