kanidm/platform/opensuse
Jinna Kiisuo 5635966a35
fix: Improve unixd & unixd-tasks startup coupling ()
* fix: Improve unixd & unixd-tasks startup coupling

Due to a complex interplay of the hardening present in both services,
the unixd-tasks service fails to start on a systemd technicality if 
unixd hasn't started first and created the /run/kanidm-unixd dir.

While previous methods probably should've achieved the correct result,
practical testing time and time again proved that wasn't the case all
the time and we had a race condition.

This change disallows unixd-tasks from starting if the requisite socket
doesn't exist that unixd creates. In turn unixd ensures via an Upholds
directive unixd-tasks is always running which provides a very 
quick & controlled retry logic.

In addition, this syncs missed OpenSUSE side fixes to Debian and
vice-versa. They are now identical for unixd & unixd-tasks, 
but long term we should actually have both pull from a single source 
of truth.

* fix: Drop [Install] section to create a static service

Also:
 - improve comments a bit to explain what's going on here and why.
 - Explicitly use /run instead of the legacy /var/run symlink.

---------

Co-authored-by: Firstyear <william@blackhats.net.au>
2025-05-19 13:10:02 +00:00
..
kanidm-ipa-sync.service 20231204 ipa sync minor improvements () 2023-12-04 16:58:15 +10:00
kanidm-unixd-tasks.service fix: Improve unixd & unixd-tasks startup coupling () 2025-05-19 13:10:02 +00:00
kanidm-unixd.service fix: Improve unixd & unixd-tasks startup coupling () 2025-05-19 13:10:02 +00:00
kanidmd.service Support reloading via systemd () 2024-10-26 01:24:58 +00:00