all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* The 🐑 Shepherd gets a service collection
@ 2023-03-13 16:11 Ludovic Courtès
  2023-03-13 19:59 ` indieterminacy
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Ludovic Courtès @ 2023-03-13 16:11 UTC (permalink / raw)
  To: guix-devel

Hello Guix!

I pushed some changes yesterday that confirm that the Shepherd paves the
way for init system innovation, synergistic cross-domain fertilization,
and delimited continuations:

  https://git.savannah.gnu.org/cgit/shepherd.git/log/?id=31d21fa083872d500c016b6b3b2587d25510702d

  31d21fa * Add REPL service.
  cd6f3fb * comm: Add 'open-server-socket'.
  c64804f * Add resource monitoring service.

These new services are built into shepherd, allowing users to control it
and to fiddle with it.  The REPL is functional but of course a bit
bumpy: you’d better know what you’re doing.

I imagine we could develop more convenient services like this, such as a
basic command scheduler similar to the ‘at’ command, and a syslogd
implementation.  The latter could be nice for a couple of reasons:
logging would happen from the start and till the end (an improvement
over the external syslogd process), and it could let us provide a nicer
user interface to view logs (taking inspiration from that of
‘journalctl’).

Thoughts?  Ideas?

Ludo’.

PS: It just occurred to me that we might as well rename the new
    (shepherd service …) hierarchy to (shepherd sheep …) or even
    (shepherd 🐑 …).


^ permalink raw reply	[flat|nested] 10+ messages in thread
* Re: The 🐑 Shepherd gets a service collection
@ 2023-03-13 23:39 Adam Faiz
  2023-03-16 14:14 ` Ludovic Courtès
  0 siblings, 1 reply; 10+ messages in thread
From: Adam Faiz @ 2023-03-13 23:39 UTC (permalink / raw)
  To: ludo; +Cc: guix-devel

> I imagine we could develop more convenient services like this, such as 
> basic command scheduler similar to the ‘at’ command, and a syslogd
> implementation.  The latter could be nice for a couple of reasons:
> logging would happen from the start and till the end (an improvement
> over the external syslogd process), and it could let us provide a nicer
> user interface to view logs (taking inspiration from that of
> ‘journalctl’).
> 
> Thoughts?  Ideas?I don't think a command scheduler should be added to the Shepherd, isn't that what mcron does?
If mcron has any deficiencies for being used as an `at` command, then that can be improved.

Regarding syslogd, I think a better approach is to tell the services to send their output to stdout and stderror,
so that logs don't depend on a separate logging service in the first place.
Per-service logging is already implemented in the Shepherd, but could be streamlined to have a default logs directory:
https://skarnet.org/software/s6/s6-log.html#loggingchain

I'm already happy with zless/any GUI log viewer, but it would be great to have a nicer user interface to view logs nonetheless.


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-03-17 16:28 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-13 16:11 The 🐑 Shepherd gets a service collection Ludovic Courtès
2023-03-13 19:59 ` indieterminacy
2023-03-14 12:20 ` Maxim Cournoyer
2023-03-16 14:16   ` Ludovic Courtès
2023-03-17 16:28     ` Maxim Cournoyer
2023-03-14 14:43 ` Efraim Flashner
  -- strict thread matches above, loose matches on Subject: below --
2023-03-13 23:39 Adam Faiz
2023-03-16 14:14 ` Ludovic Courtès
2023-03-17  6:55   ` Adam Faiz
2023-03-17  9:52     ` Csepp

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.