Subject: Re: [bug#50873] [PATCH 5/5] doc: Document the ‘guix home import’ subcommand.

From: Xinglu Chen <[email-masked]>
Date: Fri, 01 Oct 2021 07:08:21 +0200

On Thu, Sep 30 2021, Andrew Tropin wrote:

> On 2021-09-28 19:36, Xinglu Chen wrote:
>
>> * doc/guix.texi (Invoking guix home): Document ‘guix home import’.
>> ---
>>  doc/guix.texi | 33 +++++++++++++++++++++++++++++++++
>>  1 file changed, 33 insertions(+)
>>
>> diff --git a/doc/guix.texi b/doc/guix.texi
>> index 7956652050..2c268705d0 100644
>> --- a/doc/guix.texi
>> +++ b/doc/guix.texi
>> @@ -36088,6 +36088,39 @@
>>  $ guix home list-generations 10d
>>  @end example
>>  
>> +@item import
>> +Generate a @dfn{home environment} from the packages in the default
>> +profile and configuration files found in the user's home directory.  The
>> +configuration files will be copied to the specified directory.  Note
>> +that not every home service that exists is supported (@pxref{Home
>> +Services}).
>> +
>> +@example
>> +$ guix home import ~/guix-config
>> +;; This "home-environment" file can be passed to 'guix home reconfigure'
>> +;; to reproduce the content of your profile.  This is "symbolic": it only
>> +;; specifies package names.  To reproduce the exact same profile, you also
>> +;; need to capture the channels being used, as returned by "guix describe".
>> +;; See the "Replicating Guix" section in the manual.
>> +
>> +(use-modules
>> +  (gnu home)
>> +  (gnu packages)
>> +  (gnu home-services bash))
>> +
>> +(home-environment
>> +  (packages
>> +    (map specification->package
>> +         (list "glibc-locales" "nss-certs" "nss")))
>> +  (services
>> +    (list (service
>> +            home-bash-service-type
>> +            (home-bash-configuration
>> +              (bashrc
>> +                (list (slurp-file-gexp
>
> It still uses slurp-file-gexp, which is not upstreamed, but overall
> looks ok.

Oh, I thought it was already upstreamed, my bad.

> I'll make a rationale behind this function and the approach I picked in
> home services config serializers and will prepare some examples next
> week.  Maybe it will convince Ludovic or maybe I'll change my mind and
> rework configuration records for home services to use file-like
> objects.

OK, then we should probably wait for this ‘slurp-file-gexp’ discussion
to reach an consensus, then I can send a v2 for this series.  :-)