On Sun 06 Sep 2015 23:23, l...@gnu.org (Ludovic Courtès) writes:

> Service types and their “extends” relations form a DAG

I am not sure how much ordering matters.  The reason is that the
"extends" relations actually proceed from packages associated with a
service, not the service itself.  It's enough to know the set of
services and their associated extends; ordering does not appear to be
important.  Of course we could do a topological sort on services for
some other reason, but we don't actually need to for these purposes.

I think a two-phase configuration can work: one, in which we specify
services like this:

  (operating-system
   ...
   (services SERVICES))

and a second in which the services are "finalized".  Finalization is a
monadic procedure of type SERVICE SERVICES -> SERVICE.  Finalization is
where e.g. udev would grovel the SERVICES to collect all udev extends.

Andy

Reply via email to