Using the Home Manager
Installing a new Configuration
You should create a file that contains your home configuration. This file can easily be kept in version control with git for instance. The file looks like this:
(use-modules (home))
(home "/data/alice" '())
Home Reference
Scheme Procedure: (use-home-modules module-name ...)
Import home modules with name module-name. For instance,
(use-home-modules openbox hexchat)
is equivalent to:
(use-modules (home openbox)
(home hexchat))
Data Type: home
This data type represents the configuration of a home directory. It is the type of the data a home configuration file must return. It is composed of the following fields:
- data-directory: The read-write directory that contains the user files.
- base-configuration (default: a base-home-configuration object that takes the data-directory value into account, see below): A base-home-configuration object that contains configuration for required parts of the home configuration.
- configurations (default: '()): A list of additional configurations.
By default, when no base-configuration is given, the configuration contains instructions for these symlinks to be created:
~/.guix-profile
→ `${basedir}/.guix-profile`~/.config/guix
→ `${basedir}/.config/guix`~/.local
→ `${basedir}/.local`~/.cache
→ `${basedir}/.cache`
Data Type: base-home-configuration
This is the type of a basic home directory configuration that contains information for basic required configurations. It contains the following fields:
- guix-symlink: The path to the default guix profile, in a read-write directory.
- guix-config-symlink: The path to the configuration directory of guix.
- local-symlink: The path to a read-write directory that corresponds to the .local directory.
- cache-symlink: The path to a read-write directory that corresponds to the .cache directory.
Scheme Variable: root-home-type
The type of the root service, to which every service is folded. Its value is an association list that associates paths relative to the home directory with a path in the filesystem or a file-like object.
It also contains a default extension point, whose value must be an association list that is concatenated to the already configured association list.