Ludovic Courtès writes: > Christopher Baines skribis: > >> As this seems to be generating broken derivations for i586-gnu otherwise. > > “Seems” isn’t confidence-inspiring. ;-) > > Here’s one: > > $ ./pre-inst-env guix build gccgo -s i586-gnu -d > /gnu/store/yzlmgxq20bk9xcbksi7q1f839056wzhr-gccgo-12.3.0.drv > $ guix gc --references /gnu/store/yzlmgxq20bk9xcbksi7q1f839056wzhr-gccgo-12.3.0.drv |grep builder > /gnu/store/jizw9gjvzb21jm7q7xlm71pw6fr24hhv-gccgo-12.3.0-builder > $ grep -q '#<' /gnu/store/jizw9gjvzb21jm7q7xlm71pw6fr24hhv-gccgo-12.3.0-builder ; echo $? > 0 > >> * gnu/packages/gcc.scm (custom-gcc): Use gexp's for the generated package >> arguments. > > [...] > >> As otherwise this seems to generate broken derivations for i586-gnu. >> >> * gnu/packages/gcc.scm (make-gccgo): Use gexp's for the package arguments. > > > [...] > >> +++ b/gnu/packages/gcc.scm >> @@ -1156,34 +1156,34 @@ (define (make-gccgo gcc) >> (arguments >> (substitute-keyword-arguments (package-arguments gccgo) >> ((#:phases phases) >> - `(modify-phases ,phases >> - (add-after 'install 'wrap-go-with-tool-path > > If ‘phases’ might be a gexp, then this should be a gexp as well. > > Put differently, if one of the gcc* packages starts using gexps, then > all those that inherit from it should switch as well. > > Since ‘gcc-11’ uses gexps (only when targeting the Hurd), all the other > ones should use gexps. That probably includes all those in gcc.scm and > all those in commencement.scm. Yep, I think these changes were sufficient, but I missed replacing a few unquote bits with ungexp, so as QA shows this affected a bunch of derivations for all systems. I've fixed those bits now and sent a v2.