Subject: [bug#50208] [PATCH 5/5] home: Add home-environment.

From: Xinglu Chen <[email-masked]>
Date: Sat, 28 Aug 2021 12:44:35 +0200

On Fri, Aug 27 2021, Andrew Tropin wrote:

> * gnu/home.scm
> (home-environment, home-environment?, this-home-environment)
> (home-environment-derivation, home-environment-user-services)
> (home-environment-essential-services, home-environment-services)
> (home-environment-location, home-environment-with-provenance): New variables.
> * gnu/local.mk (GNU_SYSTEM_MODULES): Add home.scm.
> ---
>  gnu/home.scm | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++
>  gnu/local.mk |  1 +
>  2 files changed, 98 insertions(+)
>  create mode 100644 gnu/home.scm
>
> diff --git a/gnu/home.scm b/gnu/home.scm
> new file mode 100644
> index 0000000000..220cc49846
> --- /dev/null
> +++ b/gnu/home.scm
> @@ -0,0 +1,97 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2021 Andrew Tropin <[email-masked]>
> +;;;
> +;;; This file is part of GNU Guix.
> +;;;
> +;;; GNU Guix is free software; you can redistribute it and/or modify it
> +;;; under the terms of the GNU General Public License as published by
> +;;; the Free Software Foundation; either version 3 of the License, or (at
> +;;; your option) any later version.
> +;;;
> +;;; GNU Guix is distributed in the hope that it will be useful, but
> +;;; WITHOUT ANY WARRANTY; without even the implied warranty of
> +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +;;; GNU General Public License for more details.
> +;;;
> +;;; You should have received a copy of the GNU General Public License
> +;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
> +
> +(define-module (gnu home)
> +  #:use-module (gnu home-services)
> +  #:use-module (gnu home-services symlink-manager)
> +  #:use-module (gnu home-services shells)
> +  #:use-module (gnu home-services xdg)
> +  #:use-module (gnu home-services fontutils)
> +  #:use-module (gnu services)
> +  #:use-module (guix records)
> +  #:use-module (guix diagnostics)
> +
> +  #:export (home-environment
> +            home-environment?
> +            this-home-environment
> +
> +            home-environment-derivation
> +            home-environment-user-services
> +            home-environment-essential-services
> +            home-environment-services
> +            home-environment-location
> +
> +            home-environment-with-provenance))
> +

It should probably have a ‘Commentary’ section.  Maybe something like

  This module provides a <home-environment> record for managing per-user
  packages and 'dotfiles'.

?