me
/
guix
Archived
1
0
Fork 0

doc: Expound on ‘guix-home-service-type’.

* doc/guix.texi (Guix Home Service): Reword intro.  Tweak example to be
closer to reality.
(Declaring the Home Environment): Link to ‘guix-home-service-type’.
(Invoking guix home): Likewise.

Change-Id: I0355a6da9b9a28818eb0738854381671a6a1f652
master
Ludovic Courtès 2024-04-17 12:07:17 +02:00
parent 59bb53823e
commit f594d1bb80
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 27 additions and 13 deletions

View File

@ -39351,26 +39351,33 @@ Extra command line options for @code{guix-data-service-process-jobs}.
@end table @end table
@end deftp @end deftp
@anchor{guix-home-service-type}
@subsubheading Guix Home Service @subsubheading Guix Home Service
The Guix Home Service allows for associating Guix @ref{Declaring the
Home Environment, home-environment} declarations with a Guix The Guix Home service is a way to let Guix System deploy the home
@ref{operating-system Reference, operating-system}. environment of one or more users (@pxref{Home Configuration}, for more
on Guix Home). That way, the system configuration embeds declarations
of the home environment of those users and can be used to deploy
everything consistently at once, saving users the need to run
@command{guix home reconfigure} independently.
@defvar guix-home-service-type @defvar guix-home-service-type
Service type for the Guix Home Service. Its value must be a list of Service type for the Guix Home service. Its value must be a list of
lists containing user and home environment pairs. The key of each pair lists containing user and home environment pairs. The key of each pair
is a string representing the user to deploy the configuration under and is a string representing the user to deploy the configuration under and
the value is a home-environment configuration. the value is a home-environment configuration.
@lisp @lisp
(use-modules (gnu home))
(define my-home (define my-home
(home-environment (home-environment
...)) @dots{}))
(operating-system (operating-system
(services (list (services (append (list (service guix-home-service-type
(service guix-home-service-type `(("alice" ,my-home))))
`(("alice" ,my-home)))))) %base-services)))
@end lisp @end lisp
This service can be extended by other services to add additional home This service can be extended by other services to add additional home
@ -44255,6 +44262,12 @@ mechanism to create the XDG run-time directory and has the
like user Shepherd and its descendants will not start. like user Shepherd and its descendants will not start.
@end quotation @end quotation
If you're using Guix System, you can embed your home configuration in
your system configuration such that @command{guix system reconfigure}
will deploy both the system @emph{and} your home at once!
@xref{guix-home-service-type, @code{guix-home-service-type}}, for how to
do that.
@node Configuring the Shell @node Configuring the Shell
@section Configuring the Shell @section Configuring the Shell
This section is safe to skip if your shell or shells are managed by This section is safe to skip if your shell or shells are managed by
@ -46499,12 +46512,13 @@ guix time-machine \
You can think of it as some sort of built-in version control! Your You can think of it as some sort of built-in version control! Your
home is not just a binary artifact: @emph{it carries its own source}. home is not just a binary artifact: @emph{it carries its own source}.
@c @xref{Service Reference, @code{provenance-service-type}}, for more
@c information on provenance tracking.
@c @footnote{This action (and the related actions @quotation Note
@c @code{switch-generation} and @code{roll-back}) are usable after the If you're using Guix System, @ref{guix-home-service-type,
@c home environment is initialized.}. @code{guix-home-service-type}}, on how to embed your home configuration
in your system configuration such that @command{guix system reconfigure}
deploys both your system and your home.
@end quotation
@item switch-generation @item switch-generation
@cindex home generations @cindex home generations