cbowdon/daemons.el

Add support for shepherd (GuixSD)

Closed this issue · 9 comments

I would be fantastic to see support for Shepherd, the GNU init system (used, among others, by GuixSD).

@jellelicht has kindly provided a PR for this, which is now merged in. Please give it a whirl!

Off to a rough start: it does not load :p

Fix:

-        ((= 0 (daemons--shell-command "which herd")) 'daemons-herd)
+        ((= 0 (daemons--shell-command "which herd")) 'daemons-shepherd)

Once past that, daemons does not display anything, I still haven't figured out why.

My bad: daemons-always-sudo needs to be non-nil for daemons-shepherd to work.

Oops, that was a lousy mistake. Fixed in 40f8e5a.

Thanks!

I only wrote (and tested) for Shepherd /w user services, as mentioned in the README. If it does not work for that, I did something wrong. I also kind of assumed that there would already be a running Shepherd instance running somewhere, if this is incorrect I should work on that.

AFAICS, you are trying to use system shepherd, which I did not test for. Is there something I can still do to make it work for your use-case as well?

Sorry if if this wasn't clear: it does work with system services too! We only need to set daemons-always-sudo to non-nil.

I think Shepherd is now well-supported, so let's close this ticket. Thanks @Ambrevar and @jellelicht for all your hard work here!