Hi all, I'd like to ask for feedback regarding shipping a systemd.preset(5) file with a particular software package as a way to prefer socket activation.

To simplify things, I'm going to take the foot terminal as an example (you can find more information about foot's systemd files here: <https://codeberg.org/dnkl/foot/pulls/1281>), but this can apply to other software like OpenSSH.

Foot supports a server mode which can be socket-activated, and this is great. I'd like foot to default to socket activation when installed from a distro package, but on distros like Debian every unit which has an [Install] section gets enabled by default, meaning that the foot-server.service and foot-server.socket units will be both enabled and started by default.

To avoid enabling foot-server.service without removing the [Install] section, I was thinking about installing a preset file alongside the units which only specifies that foot-server.service should be disabled by default.

While to me this looks like a simple and kinda clean solution, the systemd.preset(5) manual page discourages shipping preset files with software packages, as that can override distro policies; while I can see how this applies to presets which *enable* units, I find a preset file which only *partially disables* a service to be pretty unobtrusive, and I don't see why it should be considered bad practice. Am I missing anything?

In short: how can a software package which supports both traditional and socket activation signal to the system that it prefers to be socket activated by default?

Thanks all!

OpenPGP key: 66DE F152 8299 0C21 99EF  A801 A8A1 28A8 AB1C EE49

Reply via email to