Hi Ludo and Tanguy, As for scons, I have contributed a PR for cross compilation - <https://codeberg.org/guix/guix/pulls/2561>.
However it is rebuild of 4k packages and there dont seem to by any teams taking this PR. If someone wants to take it on their branch, let me know, I can rebase it and assist in case there are issues caused by it found by QA once it is in merge queue. Still git wont cross compile. I suggest using git-minimal for the time being. I plan to get pyproject build system to support cross compilation. But that will not happen in the following weeks, or maybe even months. So if anyone does it before, would definitely be good. Rutherther On January 6, 2026 1:45:04 PM GMT+01:00, "Ludovic Courtès" <[email protected]> wrote: >Hello Tanguy! > >"Tanguy Le Carrour" <[email protected]> skribis: > >> Following my recent success running Guix System on my Lime2 [1], >> I’ve started adding services and packages to my OS configuration. >> >> [1]: https://codeberg.org/guix/guix/pulls/4960 >> >> For some of them, everything went smoothly: `dhcpcd-service`, >> `openssh-service`, `python`… >> But for others, I run into errors related to cross-compilation >> and I have no clue what to do of them!? >> >> The most frequent one is: `build system 'XYZ' does not support cross builds`. > >You are cross-compiling from x86_64 to ARMv7. Cross-compilation in Guix >is “best-effort”: core packages are cross-compiled in continuous >integration, but not much beyond that. > >In particular, as you found out, some build systems do not even support >cross-compilation; ‘gnu-build-system’ and ‘cmake-build-system’ support >it for example (meaning that any package with this build system can in >theory be cross-compiled), but others don’t. > >The solution here would be to implement that support in the cases you >found: ‘scons-build-system’ and ‘pyproject-build-system’. > >Or, perhaps, adjust package definitions to sidestep the problem >entirely: for instance, you could use ‘git-minimal’ or define a variant >of ‘git’ that doesn’t depend on ‘serf’ (see ‘guix graph --path git serf’). > >HTH! > >Ludo’.
