Hi! The commit 56759d30d9a817a9c9221c9468a4c4a59c9a4713 gnu: Switch to GCC 11. introduced a gratuitous dependency on coreutils-boot0 to gcc-boot0 by adding this atypical snippet --8<---------------cut here---------------start------------->8--- (snippet #~(begin ;; XXX: The GCC test suite contains files with non-ASCII file ;; names, which cannot be repacked by BOOTSTRAP-ORIGIN. Nor ;; can it be deleted from Guile, so resort to this evil hack. #$(origin-snippet (package-source gcc)) (system* #$(file-append coreutils-boot0 "/bin/rm") "-rf" "gcc/testsuite/go.test/test/fixedbugs/issue27836.dir")))))) --8<---------------cut here---------------end--------------->8--- This is problematic, because coreutils-boot0 doesn't build for the Hurd: coreutils needs hurd headers, and our hurd-headers-boot0 depends on...coreutils-boot0. Why was coreutils-boot0 used instead of the canonical delete-file-recursively? Anyway, as a first attempt, I tried adding --8<---------------cut here---------------start------------->8--- (define gcc-boot0/hurd ;; gcc-boot0 adds a dependency on coreutils-boot0, which does not build on ;; the Hurd. Move this origin definition to gcc-boot0 and remove ;; gcc-boot0/hurd in the next rebuild cycle. (package (inherit gcc-boot0) (source (bootstrap-origin (origin (inherit (package-source gcc)) (snippet #~(begin ;; XXX: The GCC test suite contains files with non-ASCII file ;; names, which cannot be repacked by BOOTSTRAP-ORIGIN. Nor ;; can it be deleted from Guile, so resort to this evil hack. #$(origin-snippet (package-source gcc)) (delete-file-recursively "gcc/testsuite/go.test/test/fixedbugs/issue27836.dir")))))))) --8<---------------cut here---------------end--------------->8--- and use that in %boot1-inputs...but as gcc-boot0 is used in more places that doesn't really work. So, until we can correct the gcc-boot0 snippet problem in the next rebuild cycle (how does that work now that we don't have core-updates anymore?, I made coreutils-boot0 build on the Hurd. See the patch below. Using this patch, I've just succeeded to build gcc-boot0: --8<---------------cut here---------------start------------->8--- root@guixydevel ~/src/guix/wip-hurd# ./pre-inst-env guix build -e '(@@ (gnu packages commencement) gcc-boot0)' --verbosity=1 The following derivation will be built: /gnu/store/669gwbfc96k5r8rv06d4cd10q7kpnkqn-gcc-cross-boot0-11.3.0.drv building /gnu/store/669gwbfc96k5r8rv06d4cd10q7kpnkqn-gcc-cross-boot0-11.3.0.drv... /gnu/store/3hl61ndnzqjrr07rywh2mfw58k81jchy-gcc-cross-boot0-11.3.0-lib /gnu/store/wbdza27aq1mab8blvswvd0g28n5pk982-gcc-cross-boot0-11.3.0 --8<---------------cut here---------------end--------------->8--- but now `guix build hello' seems to hang, so it a circular dependency might have been introduced somewhere. What a mess... WDYT? Greetings, Janneke