Hi! Thanks for your work on this. I’m looking forward to using alacrity and ripgrep, among other niceties the rust community has come up with. - John > On Apr 18, 2019, at 8:47 AM, Ivan Petkov wrote: > > Hi! > >> On Apr 17, 2019, at 7:26 PM, mikadoZero wrote: > > The rust integrations within Guix are a bit incomplete at the moment, but I’ve been > making some efforts to get things going. Right now it is possible to build individual > crates but with a *ton* of manual intervention in the package definitions. I’m working > on another change that should make it possible to start packaging rust based > packages/applications into Guix, hoping to share something next week. > >> If cargo is not packaged are people who are using rust with Guix System >> using rustc and manually managing their dependencies? > > Cargo is packaged in Guix today, however, it is exposed as an output of the rust > package (http://guix.info/manual/en/Packages-with-Multiple-Outputs.html). > > This confused me a bit the first time I installed rust on Guix as well. You’ll need > to run `guix package -i rust:cargo` to make it available. Perhaps the Guix search > needs updated to also search for matching package outputs… > > As for extra tools like rls, rustfmt, and clippy: these are usually distributed with > the compiler source tarball. Currently they are not being build/packaged as > outputs because no one has done the work to expose them as such. > > If you’re interested in using them, I encourage you to try exposing them in the > rust package definitions! If you need any help, feel free to reach out! > >> Are there any special considerations for Guix packages that provide >> programs like cargo and rustup that are also package managers? >> >> How does Guix deal with something like rust nightly releases if at all? > > Guix does not package nightly rust, and I don’t anticipate it ever will. Getting > the rust compiler built and packaged into rust takes a little bit of effort, > and it would be impossible to keep up with the nightlies by hand. > > Rustup seems to be the right way to make alternative rust toolchains available > and maintained outside of the Guix store. The last time I tried to install rustup > via the conventional installer, it failed to run on my machine outright, probably > because all necessary artifacts are in the store and not in the usual Linux distro > locations. > > Once the Guix cargo build system is flushed out a bit more, I anticipate it should > be possible to define and build rustup as a Guix package. > > —Ivan >