This repository contains my system configuration, packages, services and other related stuff for GNU Guix. The Guile code that can be found here relies on some of my guile modules.
- modules: This directory contains all guile modules with my additional
packages, services and utilities for Guix. I add this directory to
GUILE_LOAD_PATH
environment variable. - guix-package-path: This directory was made specifically for
GUIX_PACKAGE_PATH
environment variable. It contains al/guix/packages symlink which points to my package directory. Thus, it contains my packages (and only the packages) placed in a proper hierarchy. I did not setGUIX_PACKAGE_PATH
to the directory with all my guile modules as Guix would traverse all those modules and all variables inside to find the packages, which is long and may find unwanted things.Also this directory is specified in .guix-channel file, so this repository can be used as a Guix channel. I.e., a channel like the following may be added to ~/.config/guix/channels.scm file.
(channel (name 'alezost-channel) (url "https://gitlab.com/alezost-config/guix.git"))
- system-config: Directory with system configuration files (for
guix system
commands). My main config is placed in os-main.scm file. - user-config: Directory with manifest files I use to populate my Guix
profiles with
guix package --profile=… --manifest=…
shell command (actually, with my profile script). - misc: Miscellaneous stuff related to Guix.