Hello, I had a working guix home configuration, happily importing all of my dotfiles into the guix store, but a most recent guix pull broke it. I now see
1) an error due to no 'home-profile' and 2) none of my services to be found and instead a generic fontconfig service to be built, resulting in a completely empty home configuration. I've been debugging on my end but am failing to find a solution. Did something change? I confirmed in the repl that I'm passing a list of valid simple-service types into my (home-environment). Do I need to provide something else? I'm new to guix, so any debugging tips would also be appreciated. Github link: https://github.com/dustinlyons/guix-config/blob/main/build/felix-home.scm *Error running guix home reconfigure:* $ guix home --load-path=./build reconfigure ./build/felix-home.scm *error: channel: unbound variablehint: Did you forget `(use-modules (guix channels))'?error: desktop-operating-system: unbound variablehint: Did you forget a `use-modules' form?felix-home.scm:25:13: warning: resolving 'build/.Xmodmap' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/picom/picom.conf' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/.Xresources' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/polybar/colors.ini' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/polybar/bars.ini' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/polybar/modules.ini' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/polybar/config.ini' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/Thunar/uca.xml' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/dunst/dunstrc' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/printers/printers.conf' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/alacritty/alacritty.yml' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/emacs/zeroed-theme.el' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/openbox/autostart' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/openbox/rc.xml' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/rofi/launcher.sh' relative to current directoryfelix-home.scm:25:13: warning: resolving 'build/rofi/theme.rasi' relative to current directoryguix home: error: no target of type 'home-profile' for service 'home-bash'make: *** [Makefile:32: --install-felix-home] Error 1* *Source file ./build/felix-home.scm:* (define-module (felix-home) #:use-module (gnu home) #:use-module (desktop) #:use-module (dl utils) #:use-module (gnu home-services) #:use-module (gnu home-services shells) #:use-module (gnu services) #:use-module (gnu system) #:use-module (gnu packages) #:use-module (guix build utils) #:use-module (gnu packages admin) #:use-module (guix gexp)) ;; Returns a list of home-file-service structs for each dotfile (define (dl/generate-dotfiles-services dotfiles) (if (null? dotfiles) '() (let ((config-file (string-append "config/" (car dotfiles))) (build-file (string-append "build/" (car dotfiles)))) (cons (simple-service 'load-build-files home-files-service-type (list ;; pair of destination path and source path `(,config-file ,(local-file build-file "config")))) (dl/generate-dotfiles-services (cdr dotfiles)))))) (home-environment (packages (map specification->package+output %dl-packages)) (services (append (list (simple-service 'felix-environment-variables home-environment-variables-service-type `(("LANG" . "en_US.UTF-8") ("LIBGL_ALWAYS_INDIRECT" . #t) ("HYPHEN_INSENSITIVE" . #t) ("COMPLETION_WAITING_DOTS" . #t) ("OSH" . "$HOME/Resources/code/oh-my-bash") ("GUIX_PROFILE" . "$HOME/.guix-profile") ("OSH_THEME" . "agnoster"))) (service home-bash-service-type (home-bash-configuration (guix-defaults? #f) (bashrc '("# Export 'SHELL' to child processes. # Programs such as 'screen' honor it and otherwise use /bin/sh. export SHELL alias ls='ls --color' # We are being invoked from a non-interactive shell. If this # is an SSH session (as in \"ssh host command\"), source # /etc/profile so we get PATH and other essential variables. if [[ $- != *i* ]] then [[ -n \"$SSH_CLIENT\" ]] && source \"$GUIX_PROFILE/etc/profile\" # Don't do anything else. return fi # System wide configuration source /etc/bashrc # oh-my-BASH! export OSH=$HOME/Resources/code/oh-my-bash source $OSH/oh-my-bash.sh"))))) ;; Generates home-files-services for each dotfile defined ;; throughout configuration inheritance (dl/generate-dotfiles-services (append '(".Xmodmap") %dl-dotfiles))))) *Source of (home-environment (services)): %dl-dotfiles:* (define %dl-packages (append %dl-packages-workstation %dl-packages-desktop)) (define %dl-dotfiles (append %dl-dotfiles-workstation %dl-dotfiles-desktop)) (define %dl-packages-desktop (list "openbox""rofi" )) (define %dl-dotfiles-desktop (list "openbox/autostart" "openbox/rc.xml""rofi/launcher.sh" "rofi/theme.rasi" )) (define %dl-packages-workstation (list "picom""font-hack" "font-awesome" "font-google-roboto" "font-google-material-design-icons""polybar""thunar""dunst""brlaser" "system-config-printer""alacritty""emacs" )) (define %dl-dotfiles-workstation (list "picom/picom.conf"".Xresources""polybar/colors.ini" "polybar/bars.ini" "polybar/modules.ini" "polybar/config.ini""Thunar/uca.xml""dunst/dunstrc""printers/printers.conf""alacritty/alacritty.yml""emacs/zeroed-theme.el" )) *Dropping home-bash-service-type, result is no configuration other than fontconfig built with guix home:* guix home --load-path=./build reconfigure ./build/felix-home.scm error: channel: unbound variable hint: Did you forget `(use-modules (guix channels))'? error: desktop-operating-system: unbound variable hint: Did you forget a `use-modules' form? felix-home.scm:25:13: warning: resolving 'build/.Xmodmap' relative to current directory felix-home.scm:25:13: warning: resolving 'build/picom/picom.conf' relative to current directory felix-home.scm:25:13: warning: resolving 'build/.Xresources' relative to current directory felix-home.scm:25:13: warning: resolving 'build/polybar/colors.ini' relative to current directory felix-home.scm:25:13: warning: resolving 'build/polybar/bars.ini' relative to current directory felix-home.scm:25:13: warning: resolving 'build/polybar/modules.ini' relative to current directory felix-home.scm:25:13: warning: resolving 'build/polybar/config.ini' relative to current directory felix-home.scm:25:13: warning: resolving 'build/Thunar/uca.xml' relative to current directory felix-home.scm:25:13: warning: resolving 'build/dunst/dunstrc' relative to current directory felix-home.scm:25:13: warning: resolving 'build/printers/printers.conf' relative to current directory felix-home.scm:25:13: warning: resolving 'build/alacritty/alacritty.yml' relative to current directory felix-home.scm:25:13: warning: resolving 'build/emacs/zeroed-theme.el' relative to current directory felix-home.scm:25:13: warning: resolving 'build/openbox/autostart' relative to current directory felix-home.scm:25:13: warning: resolving 'build/openbox/rc.xml' relative to current directory felix-home.scm:25:13: warning: resolving 'build/rofi/launcher.sh' relative to current directory felix-home.scm:25:13: warning: resolving 'build/rofi/theme.rasi' relative to current directory /gnu/store/2frj2r4kin54v6xm27c02z3why9qpvbz-home Cleaning up symlinks from previous home-environment. Removing /home/dustin/.config/fontconfig/fonts.conf... done Removing /home/dustin/.config/fontconfig... done Skipping /home/dustin/.config (not an empty directory)... done Removing /home/dustin/.profile... done Cleanup finished. New symlinks to home-environment will be created soon. All conflicting files will go to /home/dustin/1634038573-guix-home-legacy-configs-backup. Skipping /home/dustin/.config (directory already exists)... done Creating /home/dustin/.config/fontconfig... done Symlinking /home/dustin/.config/fontconfig/fonts.conf -> /gnu/store/phj2z2iiqdhryfy7mqral0b9qz3hlva6-fonts.conf... done Symlinking /home/dustin/.profile -> /gnu/store/fxbppk3pqzdi3zzy0xl5vg1ir6c5jzq5-shell-profile... done done Finished updating symlinks. Comparing /gnu/store/2frj2r4kin54v6xm27c02z3why9qpvbz-home/profile/share/fonts and /gnu/store/2frj2r4kin54v6xm27c02z3why9qpvbz-home/profile/share/fonts... done (same) Evaling on-change gexps. On-change gexps evaluation finished Thank you, Dustin