Guix WTF
background
Guix home configuration involves a .scm file full of Scheme that describes a home-config containing a home-environment where the home-environment contains (among other details) the packages that the user wants in addition to what’s defined to exist in the system configuration. To create such a package enumeration, the modules containing the packages have to be imported by way of use-module.
problem
I was trying to figure out what module to include in my guix-home-config.scm so that I could use make.
I could temporarily use make by doing guix shell make which led me to believe that the package name was make.
After several internet searches and random guesses that weren’t helpful, I fetched the Guix source and started grepping.
In NixOS it was gnumake, so I had previously tried both make and gnumake as the terms in the packages list in hopes it would give me a hint from the compiler and ask if I forgot to use-module on the actual name. To further complicate this, everything else I had looked at in the source had a package name for what it was, but make had the name of make. And then right before that was some define-public gnu-make a few lines up that I didn’t know how to interpret. So even after I found the damn file it took a while before I tried the right combination of terms.
solution
I had to do a use-module on gnu packages base so that I could include gnu-make in my packages list.
Here’s my complete configuration so far:
(define-module (guix-home-config)
#:use-module (gnu home)
#:use-module (gnu home services)
#:use-module (gnu home services shells)
#:use-module (gnu home services dotfiles)
#:use-module (gnu services)
#:use-module (gnu packages version-control) ;; for git
#:use-module (gnu packages tmux)
#:use-module (gnu packages rust-apps) ;; for bat
#:use-module (gnu packages base) ;; for make
#:use-module (gnu system shadow))
(define home-config
(home-environment
(packages (list git tmux bat gnu-make))
(services
(append
(list
(service home-dotfiles-service-type
(home-dotfiles-configuration
(directories '("./dots"))))
(service home-bash-service-type)
(service home-files-service-type
`((".guile" ,%default-dotguile)
(".Xdefaults" ,%default-xdefaults)))
)
%base-home-services))))
home-config
Tags: index, guix
#index
#guix
Navigation
index
tags
prev ⏰
created: 2026-04-17
updated: 2026-04-18 05:19:05
(re)generated: 2026-04-18
page source