4 ms·
`rustup` is awesome for me as a developer. It is not convenient if I am a sysadmin that wants everything to be stable and consistent: I can not afford to use sp
by krastanov 4y ago
`rustup` is awesome for me as a developer. It is not convenient if I am a sysadmin that wants everything to be stable and consistent: I can not afford to use special version/package manager for every single language. It is fair to complain that rust (or python, or julia, or any other language with built-in environment/package/version manager) do not play nice with OS package managers. OS package managers are starting to take "vendoring" a bit more seriously because of this.
- rascul 4y agoThe OS package managers seem to be figuring it out, though. I've noticed that both opensuse and debian have a number of rust programs in their repos.
- pornel 4y agoDebian does it the hard way, by making a Debian package for every crates-io dependency used and patching Rust programs to use Debian's forked deps instead. It's seems like a massive pain for them, and has zero value for Rust end users, since normal Cargo won't use any of this. Rust often carries its own bugfixes to its LLVM version (before they're accepted upstream). Debian unbundles LLVM from Rust and makes Rust use Debian's LLVM, which creates a risk of undoing Rust's bugfixes and causing miscompilations. I don't think anyone should be using Debian-packaged Rust. Debian's and Rust's policies are fundamentally incompatible. This results in Debian having a hopelessly outdated inferior package that is a pain for both Debian users and the rest of the Rust ecosystem.
- superkuh 4y agoWe're both talking about the same elephant but we're obviously touching different ends of it. The end I'm touching smells really bad. The fact that so many distros have to go extremely far out of their way, breaking their standard processes, shows that Rust is unique in it's tomfoolery. You guys are advocating for the tail to wag the dog.
- troutwine 4y agoAt the most recent RustConf William Brown spoke about how OpenSUSE deals with Rust[1]. If I remember correctly from his talk they started doing something very similar to Debian and then eventually settled on "just use rustup". I wish I had taken better notes because there was more nuance to the history there but I think they'll release the videos of the talks soon. [1]: https://rustconf.com/schedule#how-we-ship-rust-in-opensuse https://rustconf.com/schedule#how-we-ship-rust-in-opensuse
- baby 4y agoI could understand any other languages, but rustup is kind of flawless from my point of view, so I'm still wondering what doesn't work exactly : o
- pas 4y agoyou want stability (aka reproducibility across a fleet of workstations/servers), but also security updates too, right? but what do you mean by consistency? and you don't want to create & distribute a new OS image for every security update, right? ... anyway, the whole problem is that only upstream can provide these kind of security updates. it's a big (and very very convenient) lie what stable distros are doing, but many times packages have to work their asses off to maintain this illusion. (when they have to patch/backport/hack packages.) Rust as language and compiler provides the tools for this (stability guarantee, editions, etc), but the various devs that provide Rust crates might not. sure, if Rust would artificially hold back new features that would definitely provide this "stability", but it's no wonder devs adopt new features fast. because they want them, it makes their life easier, and it usually makes users happier too. what the Rust ecosystem is doing (and NodeJS and TypeScript and quite a few high-velocity newish ones) is providing updates to users faster. of course there are some users that might not care about this, hence debian oldstable, and so on.
- pdimitar 4y agoI get where you're coming from but Rust is a bad example of your point. Its tooling is straightforward to install and use. I've bootstrapped several build and CI/CD servers and Node / Python have been infinitely more troublesome. I only had a problem with Rust once. The "stable" OS packages are mostly marketing without much substance and while they're convenient for you they also kind of lie to you as well.