A new Guix release came out some time ago. And I got the idea that if I can bootstrap glibc, gcc, and guix to HURD and Mach, I can have a non-Linux GNU system. But I also need some software like bash, emacs, binutils, coreutils, an init system. Do any of those have any system calls that are linux dependent? Would I be able to do it like in LFS?
Would it be possible to compile and bootstrap GNU
gccglibchurd
Best Answer
Some years ago, I created a GNU/Hurd based distribution from scratch. You can still find about it by googling Bee GNU/Hurd.
All official GNU software (including the packages you've mentioned) should support Hurd, and most packages actually do. But keep in mind that Hurd is not a drop-in replacement for Linux, so you actually need to cross-compile all packages, or compile them from a native GNU/Hurd system, much in the same way as if you were building your software for another architecture (i.e. building arm software on x86).
That said, I advise you to follow these steps:
Install Debian GNU/Hurd somewhere (a VM is OK) and get familiar with it.
Build Guix on said system, and make sure you can actually generate and install packages (you probably will need to make some changes to it).
Modify Guix to be able to create and manage SubHurds
At this stage, you should be ready for bootstrapping a complete GNU system based on Hurd wherever you want. You just need to configure GRUB properly afterward.
Happy hacking!