This patch adds the glibc headers for hurd. It assumes that glibc/hurd exists. Ludovic if I try to use > (zero? (system* "make" > (string-append out "/include/gnu/stubs.h"))))) as you suggested, I am getting >make[2]: *** No rule to make target '/tmp/nix-build-glibc-hurd-headers-cross-i686-pc-gnu-2.18.drv-9/build/elf/soinit.os', needed by '/tmp/nix-build-glibc-hurd-headers-cross-i686-pc-gnu-2.18.drv-9/build/libc.so'. Stop. >make[2]: Leaving directory '/tmp/nix-build-glibc-hurd-headers-cross-i686-pc-gnu-2.18.drv-9/glibc-hurd-2.18/mach' >Makefile:233: recipe for target 'mach/subdir_install' failed >make[1]: *** [mach/subdir_install] Error 2 >make[1]: Leaving directory '/tmp/nix-build-glibc-hurd-headers-cross-i686-pc-gnu-2.18.drv-9/glibc-hurd-2.18' >Makefile:9: recipe for target '/gnu/store/dgf45yi11yn08fq8hm1cp49yqhyg0nl6-glibc-hurd-headers-cross-i686-pc-gnu-2.18/include/gnu/stubs.h' failed >make: *** [/gnu/store/dgf45yi11yn08fq8hm1cp49yqhyg0nl6-glibc-hurd-headers-cross-i686-pc-gnu-2.18/include/gnu/stubs.h] Error 2 and it cannot be built. I am sending you the log as well so you can see for yourself.