Here are my cleaned up rust patches. They aren't too useful yet IMO. Patches 1-9 could be merged. rust-rand, cargo and the recursive importer are for reference in case someone wants to play with it.
David Craven (12): upstream: Use a the first url from urls when find2 returns #f. build-system: Add cargo build system. import: utils: Add some utilities. import: Add importer for rust crates. import: Add updater for rust crates. gnu: llvm: Enable install utils. gnu: Add rust bootstrap binaries. gnu: Add rustc. gnu: Add rust-libc. RECURSIVE IMPORTER wip gnu: Add rust-rand. gnu: Add cargo. Makefile.am | 3 +- doc/guix.texi | 5 + gnu/local.mk | 1 + gnu/packages/llvm.scm | 3 +- gnu/packages/rust.scm | 352 ++++++++++++++++++++++++++++++++++++++ guix/build-system/cargo.scm | 149 ++++++++++++++++ guix/build/cargo-build-system.scm | 103 +++++++++++ guix/import/crate.scm | 219 ++++++++++++++++++++++++ guix/import/utils.scm | 43 +++++ guix/scripts/import.scm | 2 +- guix/scripts/import/crate.scm | 94 ++++++++++ guix/scripts/refresh.scm | 4 +- guix/upstream.scm | 2 +- tests/crate.scm | 102 +++++++++++ 14 files changed, 1077 insertions(+), 5 deletions(-) create mode 100644 gnu/packages/rust.scm create mode 100644 guix/build-system/cargo.scm create mode 100644 guix/build/cargo-build-system.scm create mode 100644 guix/import/crate.scm create mode 100644 guix/scripts/import/crate.scm create mode 100644 tests/crate.scm -- 2.11.0