Next: Secure Shell, Previous: Power Management Home Services, Up: Home Services [Contents][Index]
The (gnu home services shepherd)
module supports the definitions
of per-user Shepherd services (see Introduction in The GNU
Shepherd Manual). You extend home-shepherd-service-type
with
new services; Guix Home then takes care of starting the shepherd
daemon for you when you log in, which in turns starts the services you
asked for.
The service type for the userland Shepherd, which allows one to manage long-running processes or one-shot tasks. User’s Shepherd is not an init process (PID 1), but almost all other information described in (see Shepherd Services) is applicable here too.
This is the service type that extensions target when they want to create
shepherd services (see Service Types and Services, for an example).
Each extension must pass a list of <shepherd-service>
. Its
value must be a home-shepherd-configuration
, as described below.
This data type represents the Shepherd’s configuration.
shepherd (default: shepherd
)
The Shepherd package to use.
auto-start? (default: #t
)
Whether or not to start Shepherd on first login.
daemonize? (default: #t
)
Whether or not to run Shepherd in the background.
silent? (default: #t
)
When true, the shepherd
process does not write
anything to standard output when started automatically.
services (default: '()
)
A list of <shepherd-service>
to start.
You should probably use the service extension
mechanism instead (see Shepherd Services).