My configuration for GNU Guix

Alex Kost 1fb884c7b1 packages/games: Update 'fheroes2' for the new home and version (0.8.4) 4 anni fa
guix-package-path a0d39463d0 Make a single README file instead of multiple ones 5 anni fa
misc 770e5e8a6e misc: Add example package for a shell script 8 anni fa
modules 1fb884c7b1 packages/games: Update 'fheroes2' for the new home and version (0.8.4) 4 anni fa
system-config c57e3db08e os: Do not build bootloader in any way 4 anni fa
user-config 1f36a06ef2 packages: Remove 'build-guix-packages' 8 anni fa
.gitignore b94caf990e gitignore: Ignore *.go and "tmp" 7 anni fa
.guix-channel d2429cb0b1 Add ".guix-channel" 5 anni fa
COPYING 97f80770de Add COPYING and README 9 anni fa
Makefile 59b25133ef packages/games: Add 'fheroes2' 5 anni fa
README.org d2429cb0b1 Add ".guix-channel" 5 anni fa
packages 5a35283e9b Move packages and services to "modules" 7 anni fa
services 5a35283e9b Move packages and services to "modules" 7 anni fa

README.org

About

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.

Files and directories

  • 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 [[file:modules/al/guix/packages][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 set =GUIX_PACKAGE_PATH= to the directory with all my guile [[file:modules][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 file.

#+BEGIN_SRC scheme (channel (name 'alezost-channel) (url "https://gitlab.com/alezost-config/guix.git")) #+END_SRC

  • system-config: Directory with system configuration files (for ~guix
  • system~ commands). My main config is placed in [[file:system-config/os-main.scm][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 [[https://gitlab.com/alezost-config/guile/blob/master/scripts/profile][profile]] script).
  • misc: Miscellaneous stuff related to Guix.