Danny Milosavljevic writes: > * gnu/packages/patches/rustc-1.29.0-src.patch: New file. > * gnu/local.mk (dist_patch_DATA): Add it. > * gnu/packages/rust.scm (rust-1.19): Delete variable. > (rust-1.20): Delete variable. > (rust-1.21): Delete variable. > (rust-1.22): Delete variable. > (rust-1.23): Delete variable. > (rust-1.24): Delete variable. > (rust-1.25): Delete variable. > (rust-1.26): Delete variable. > (rust-1.27): Delete variable. > (rust-1.28): Delete variable. > (rust-1.29): Bootstrap from mrustc. > [source]: Add patch. > (rust-1.30)[inputs]: Remove llvm 3. Add llvm 6. > (mrustc): Update rustc-version to 1.29.0. Thanks a lot for this work Danny! I was able to get one step further by hacking the mrustc compiler to force "group linking" with --start-group and --end-group, based on a suggestion in #mrustc. It makes the compiler about 10x slower, but I suppose that's okay for a one-time job. Now the build fails when trying to use the built rustc binary, and I'm struggling to figure out how to proceed. I think we are pretty close! I've attached my changes as a diff here. Some of the changes are purely cosmetic, feel free to pick-and-choose what you want/need. Without further ado...