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).
The Shepherd also comes with a log rotation service, which
compresses and then deletes old log files produced by services and
daemons that it runs. This service is made available through
home-log-rotation-service-type
as described below.
This is the service type for the user Shepherd log rotation service
(see Log Rotation Service in The GNU Shepherd Manual).
Its value must be a log-rotation-configuration
record, exactly as
for its system-wide counterpart. See log-rotation-configuration, for
its reference.
This service is part of %base-home-services
.
These are the timer
and transient
Shepherd services. The
former lets you schedule command execution for later, while the latter
can run commands in the background as a regular service.
See the system timer
and
transient
services, which are their Guix System counterparts,
for more info.
Next: Secure Shell, Previous: Power Management Home Services, Up: Home Services [Contents][Index]