The rust team is pleased to announce that the rust-team branch has been merged back into master. There are 570 commits across the branch. Cross-compiling support for the cargo-build-system was added, including for librsvg. Cross-compiling was tested for (nearly) all architectures supported in `guix build --list-targets`. Upstream rust added 'i686-unknown-hurd-gnu' as a target in rust-1.74, so that will need to wait until another time. In the meantime, x86_64-w64-mingw32 at least compiles correctly and tests well under wine. Notable notes: * New rust version is 1.73. * 4001 packages use the cargo-build-system * Rust crates produced in the 'package' phase of the cargo-build-system should now be reproducible (for real this time) * Packages added: eza, kibi, libgit2-1.6, libgit2-1.7, spotifyd, stgit-2 * Packages updated: alfis, rust-analyzer, rust-cargo-c * Rust-analyzer is built from the rust sources now, updating it to 1.73. It can be installed as 'rust-analyzer' or as 'rust:tools' * Cross-compiling support for the cargo-build-system was added Additional notes: * crates.io no longer accepts '-' instead of '_' in crate lookups, so there are a (probably large) number of packages which need to have their source adjusted. * Compiled rust packages currently have a 'package' phase, which runs the command used to crate a 'crate tarball', and is installed in %output/share/cargo/registry, with unpacked sources in %output/share/cargo/src. In theory it should be possible to use these for local rust development. The benefits include everything that comes with being a guix package, including pre-patched shebangs. Currently no index file is created in $GUIX_ENVIRONMENT/share/cargo/registry/index, which is likely necessary to actually make use of this. Additionally, I am unsure how to use '$GUIX_ENVIRONMENT' in ~/.cargo/config so that it is expanded and not taken as a literal string. -- Efraim Flashner רנשלפ םירפא GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted