Next: , Previous: , Up: GNU Guix   [Contents][Index]


13 Home Configuration

Guix supports declarative configuration of home environments by utilizing the configuration mechanism described in the previous chapter (see Defining Services), but for user’s dotfiles and packages. It works both on Guix System and foreign distros and allows users to declare all the packages and services that should be installed and configured for the user. Once a user has written a file containing home-environment record, such a configuration can be instantiated by an unprivileged user with the guix home command (see Invoking guix home).

Note: The functionality described in this section is still under development and is subject to change. Get in touch with us on guix-devel@gnu.org!

The user’s home environment usually consists of three basic parts: software, configuration, and state. Software in mainstream distros are usually installed system-wide, but with GNU Guix most software packages can be installed on a per-user basis without needing root privileges, and are thus considered part of the user’s home environment. Packages on their own are not very useful in many cases, because often they require some additional configuration, usually config files that reside in XDG_CONFIG_HOME (~/.config by default) or other directories. Everything else can be considered state, like media files, application databases, and logs.

Using Guix for managing home environments provides a number of advantages:


Next: Documentation, Previous: System Configuration, Up: GNU Guix   [Contents][Index]