Paul Alesius schreef op vr 25-03-2022 om 09:05 [+0100]: > I've tried to produce a patch for the latest version, and it has > probably hundreds of dependencies that need to be updated. Even if you didn't succeed at updating _all_ dependencies, if you have patches for some of them, please send them. It will help people in the future with updating rust-analyzer or other rust packages. And is it necessary to update _all_ dependencies? For comparison, graphical applications usually compile just fine even if gtk+ or glibc are somewhat old. > In addition to that, rust-analyzer is under heavy development and > there is a release every month. Many people will want to use the > nightly version too. For many people, a vaguely recent-ish version would be sufficient. At least, that's the case for C, GCC and Clang. > As long as there is rust and rust-cargo in Guix, then rust-analyzer > can be easily compiled and installed from git with "cargo xtask > install --server" using the rust-cargo system. > > I'd suggest that a Guix package for rust-analyzer is not needed, > especially due to the excessive time required to update its package > definition and all of the vendored dependency crates, What is the point of a distribution if it not distributing packages? Removing a package for being ~two months old and pointing users to Rust's equivalent of "curl ... | bash -" instead seems a disservice to users to me. If I just do ‘cargo xtask install --server", how do I know if it isn't bundling anything or containing malware? Modifying the source code seems also non-trivial, compared to Guix where one can do things like --with-patch. What about statelessness, reproducibility, time- machine, the SWH fallback and sharing substitutes on the local network? It might be possible to do "cargo xtask install --server", but many advantages of Guix would be lost. > and focus should instead be on rust and rust-cargo. Indeed, e.g. it would be nice to figure out how to eliminate #:skip- build?, replace #:cargo-inputs by regular inputs, figure out how to stop having to package multiple versions of the same package. Greetings, Maxime.