kanidm/server/daemon/debian
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
..
group.conf packaging: Add kanidmd deb package, update documentation () 2025-03-18 12:10:42 +10:00
kanidmd.service fix: Improve unixd & unixd-tasks startup coupling () 2025-05-19 13:10:02 +00:00
postinst packaging: Add kanidmd deb package, update documentation () 2025-03-18 12:10:42 +10:00
server.toml packaging: Add kanidmd deb package, update documentation () 2025-03-18 12:10:42 +10:00