Hi Ludo,

Thank you for the patch.

On 23.02.25 22:51, Ludovic Courtès wrote:
Hi Maxim,

Maxim Cournoyer <[email protected]> skribis:

I was wondering if this shouldn't be part of an implicit default 
%shepherd-default-requires that
could be overridden if needed... but I think even in systemd land you
must explicitly specify wanted using e.g. 'WantedBy=multi-user.target'
in your systemd unit definition, so I guess it's fine that it must be
explicitly specified.

I almost changed the default value of ‘requirement’ to '(user-processes)
in <shepherd-service>, but then I thought this would need more testing
and discussion: surely there are places in Guix and in code/config out
there that relies on the current default value.


I don't think this would have been a good change:

- It breaks services that correctly don't depend on user-processes, i.e. filesystem mounts - It breaks every home-services that (correctly) depends on nothing but the home-shepherd . - It creates a (non obvious) discrepancy between the shepherd service API and the Guix layer on top


Imo ideally all services would expose their shepherd requirements (and service-autostart, extra daemon args, daemon-environment, extra actions, ...) in the configuration records which would allows users to workaround such a problem themselves.

The current system depends on whether the author of the service added it, feels a bit arbitrary and is not flexible if a setting one would like to adjust is not configurable.

(i am guilty of this as well for the service i contributed to guix)

But this for a discussion at another time.

Thanks for your feedback,
Ludo’.




Reply via email to