guix pull compiles every .scm file under a channel's checkout as an ordinary package module and then loads each by its path-derived module name to build the package cache. channels.scm and channels.d/*.scm never had define-module clauses -- they relied on guix pull -C's implicit (guix channels) import, which only applies to the -C argument itself, not to files swept up as part of the channel's own module tree. That produced first an unbound-variable error on `channel` at compile time, and after adding plain use-modules imports, a "no code for module" error at package-cache load time. Match the dual-purpose pattern already used by metznet/machines/*.scm: a real define-module (so the module system finds it under its expected name) plus a use-module for (guix channels) (so guix pull -C channels.scm still works when it loads these directly). |
||
|---|---|---|
| channels.d | ||
| docker | ||
| metznet | ||
| scripts | ||
| .gitignore | ||
| .guix-channel | ||
| Makefile | ||
| channels.scm | ||
| docker-compose.yml | ||