[systemd-devel] Can /usr/lib/systemd/user/sockets.target.wants be used to autoenable a socket by a vendor package?

Yuri Kanivetsky yuri.kanivetsky at gmail.com
Sat Sep 17 17:35:11 UTC 2022


Hi,

I've noticed that an Arch Linux package (gnupg) seemingly
automatically enables a socket:

ln -s "../dirmngr.socket"
"/usr/lib/systemd/user/sockets.target.wants/dirmngr.socket"

https://github.com/archlinux/svntogit-packages/commit/e74444a6851881e2cfea37b76cfb16ba97af2fcc

Before the change they were symlinked to /etc/systemd/user/sockets.target.wants.

Later I was told that there's such a thing as preset units (an
undocumented feature?):

https://bbs.archlinux.org/viewtopic.php?pid=2057758#p2057758

The way I understood it, if I put dirmngr.socket at
/usr/lib/systemd/user/sockets.target.wants, it's like adding "enable
dirmngr.service" to the preset policy. In other words, it won't be
enabled by default, and won't be activated on boot unless I do
`systemctl --user preset dirmngr`.

Can you clarify this? Are there preset units? Is my understanding of
how they work correct?

Regards,
Yuri


More information about the systemd-devel mailing list