Efraim Flashner writes: > 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. Congrats! That is some excellent news.