mirror of
https://github.com/home-assistant/supervisor.git
synced 2026-07-02 19:35:42 +01:00
fe4f3b5761
On newer HAOS (home-assistant/operating-system#4736), hassos-supervisor.service gets a long stop timeout (420 s docker stop + 450 s TimeoutStopSec) so Supervisor can handle the SIGTERM during host teardown and gracefully stop Core, apps and plugins via its existing shutdown handler. On older releases the timeout is too short, so reboot()/shutdown() keep stopping Core in-process before requesting the reboot/power off. For host shutdowns not initiated by Supervisor (ACPI, power button, systemctl reboot), the SIGTERM handler now checks the systemd manager state. When it is "stopping", Supervisor runs Core.shutdown() to stop managed services gracefully; on a plain Supervisor restart the state is "running", so only Supervisor stops as before. The manager state is exposed by every systemd version, so this works regardless of the OS release. Closes home-assistant/operating-system#4642