4 ms·
Please note that "cargo install" is intended for installing Cargo subcommands and Rust-related tools for developers, not for distributing general software to en
by ruuda 6y ago
Please note that "cargo install" is intended for installing Cargo subcommands and Rust-related tools for developers, not for distributing general software to end-users. https://github.com/rust-lang/rfcs/pull/1200#issuecomment-120662273 https://github.com/rust-lang/rfcs/pull/1200#issuecomment-120...
- kd5bjo 6y agoThe final accepted version of that RFC makes no mention of this, and even contemplates Cargo install as an alternative to system package managers [1]. The comment you link uses Rust tools as a justification for adding “cargo install”, but doesn’t attempt to limit its applicability to other binaries. [1] https://github.com/rust-lang/rfcs/blob/master/text/1200-cargo-install.md#system-package-managers https://github.com/rust-lang/rfcs/blob/master/text/1200-carg...
- svnpenn 6y agoEven if you're right, what are you arguing here? "Cargo build" makes it extremely easy to distribute executables, as do GitHub releases. And free I might add. It it only the most lazy and selfish developers who would not utilize this. I am speaking as someone who has distributed both Rust and Go programs. Even a once a year executable release would be better than just saying "build it yourself".
- kd5bjo 6y ago> It it only the most lazy and selfish developers who would not utilize this. Please refrain from making ad-hominem attacks on people that make different decisions than you would, even if they’re anonymous. Open-source developers make their own decisions for their own reasons. They donate their time and effort to provide something to the community, and only they are in a position to determine what activities are worth their time.
- fluffything 6y ago> It it only the most lazy and selfish developers who would not utilize this. Are you calling the whole Gentoo community lazy ? If anything, I'd consider them to be the opposite of lazy, since making sure that all software always builds properly on each of your users machines takes a lot of work (IMO much harder than only making sure that it builds on your package manager controlled servers), and Watts.
- qezz 6y agoNot sure if `rg` or `fd` are of either cargo subcommands or tools for developers.
- GolDDranks 6y agoI think they are installable both with cargo install and brew install, so it doesn't really matter :D
- fluffything 6y ago`rg` is distributed via multiple channels - most distros have packages for it.
- minxomat 6y agoAs long as projects are telling people to do it this way, as long as it’s the easiest way to do so, it’s going to happen and keep happening. An RFC doesn’t get to dictate how devs distribute their software nor how users install it. We see time and time again how devs try to tell users how they’re using their software wrong and that never does anyone any good. Face the reality, and try to understand how that happened and what you can do. A “don’t do that” isn’t good enough. FWIW the few rust devs I know do it exactly like this.
- stingraycharles 6y agoDo keep in mind that this kind of thinking is kind of self-reinforcing; by using cargo to distribute software, you'll keep a certain group of users outside of your ecosystem, thus never seeing complaints. I, for one, cannot install this on the latest Debian Stable, I'm getting 'failed to parse Cargo.lock file' errors with cargo. So since there's no other way for me to install this or try this out, that's it. Now I could probably install a more recent cargo version, but really, should I have to? I'm not a rust dev at all, and it seems like a high tax to pay for installing a tool I don't even know I will really use. I'll also know that raising a support issue about this would come off as entitled, and I'm not too familiar with Rust's ecosystem so I don't know if I step on anyone's toes, so I won't do it.
- steveklabnik 6y agoThis is exactly why the discussion linked above happened, and why the RFC text still does say > It is expected that all major Rust projects will still invest effort into distribution through standard package managers, and Cargo will certainly have room to help out with this, but it doesn't obsolete the need for cargo install. If you're not a Rust developer, expecting you to have cargo and the right toolchain installed is too high a burden.
- kd5bjo 6y ago> Now I could probably install a more recent cargo version, but really, should I have to? You don’t have to: You always have the option of not using the tool. It’s provided for free, and it’s not reasonable to expect it to be appropriate for everyone (or really anyone except the developer). If their chosen installation method makes it unsuitable for you, so be it. (NB: I am not affiliated with and do not speak for this project)