Start the service obj, including all the services it depends on.
It tries quite hard to do this: When a service that provides a
required symbol can not be started, it will look for another service
that also provides this symbol, until starting one such service
succeeds. There is some room for theoretical improvement here, of
course, but in practice the current strategy already works very well.
This method returns the new value of the
Slots of services, which is
#f if the service could not
This will stop the service obj, trying to stop services that
depend in it first, so they can be shutdown cleanly. If this will
fail, it will continue anyway. Stopping of services should usually
succeed, though. Otherwise, the behaviour is very similar to the
start method. The return value is also the new
#f if the service was stopped.
Calls the action the-action (a symbol) of the service obj, with the specified args, which have a meaning depending on the particular action.
Returns a list of the canonical names of services that conflict with the service obj.
Returns the canonical name of obj, which is the first element of
Returns which symbols are provided by obj.
Returns which symbols are required by obj.
Returns whether the service obj is a one-shot service.
Returns whether the service obj is running.
Returns whether the service obj should be respawned if it terminates.
Display status information about obj. This method is called
when the user performs the action
status on obj, but
there is no specific implementation given for it. It is also called
detailed-status is applied on the