Hi,

I am pretty new to Guix, but I tackled this as well and ended up using
time-machine. My issue was that I needed to check if the whole channel actually
compiles when put together. I ended up with something like this in the CI:

        cat >channels.scm <<EOF
        (list
          %default-guix-channel
          (channel
            (name 'elektroline)
            (url "${CI_PROJECT_DIR}")
            (branch "${CI_COMMIT_BRANCH}")
            (commit "${CI_COMMIT_SHA}")))
        EOF
        guix time-machine -C channels.scm -- describe

This will include dependent channels as configured in the current channel.

I am not sure if this is the best way, but it worked for my use case.

Best wishes,
Karel


On Thu 29 Oct 2026 08:36:46 PM , Tomas Volf wrote:
> Hi,
> 
> I would like to compile files in my Guix channel during development,
> however I am not sure how.  Trying to use `guild compile' leads to a
> predictable error:
> 
> --8<---------------cut here---------------start------------->8---
> GUILE_AUTO_COMPILE=0 guild compile -o wolfsden/packages/golang-apps.go 
> wolfsden/packages/golang-apps.scm 
> Backtrace:
> In ice-9/eval.scm:
>    293:34 19 (_ #<module (#{ g111}#) 7fee4ef0a640>)
> [..]
> 
> ice-9/boot-9.scm:1705:22: In procedure raise-exception:
> no code for module (nonguix download)
> --8<---------------cut here---------------end--------------->8---
> 
> `guix' itself does not offer any `compile' command.  Would anyone be
> able to point me in the right direction here?
> 
> (Yes, I know I can clone every single channel I use and pass them to
> guild via -L.  However I would strongly prefer solution that uses
> channels in the currently running `guix' command, as `guix repl' does.)
> 
> Thanks,
> Tomas
> 
> -- 
> There are only two hard things in Computer Science:
> cache invalidation, naming things and off-by-one errors.

Attachment: signature.asc
Description: PGP signature

Reply via email to