Hello, Arun Isaac skribis: > I'm working on fixing this bug. I have modified > guix/build/python-build-system.scm for the same. In particular, I have > added #:use-module (guix packages) because I need the functions > `package-name' and `package-transitive-target-inputs'. But, when I try > building any python-build-system package with something like > "./pre-inst-env guix build scons", I get a ("no code for module" (guix > packages)) error. What am I missing? > > Full backtrace follows: [...] > 2954: 4 [define-module* (guix build python-build-system) #:filename ...] > 2929: 3 [resolve-imports ((# # gnu:) (#) (#) (#) ...)] > 2870: 2 [resolve-interface (guix packages) #:select ...] > In unknown file: > ?: 1 [scm-error misc-error #f "~A ~S" ("no code for module" (guix packages)) #f] “Build-side” modules, which typically live in (guix build …), should not depend on “host-side” modules such as (guix packages). That’s because if we did that, we’d effectively end up importing all of Guix on the build side, but then we’d also have to serialize data structures such as packages to pass them from one side to the other. (I hope this makes sense to you, but if it doesn’t maybe the intro of can shed some light.) So in short, we cannot use ‘package-name’ and ‘package-transitive-target-inputs’ in this module. (Time passes…) I wasn’t sure how to fix this bug myself so I gave it a try and ended up with the patch below, but I haven’t tested in detail. (You’ll notice (guix build-system python) is hard to work with because it doesn’t use gexps yet.) How does it look? Thanks, Ludo’.