Well put. I share this reservation!
On my nixOS machine I used to install rustup
and then use it to imperatively manage my Rust toolchain. I ran into linking problems and state discrepancies between configuration.nix
and rustup’s installation. In asking arround, people recommended using the overlay.
https://discourse.nixos.org/t/do-rustup-installed-components-such-as-rls-supposed-to-be-usable-on-nixos is an example of a similar problem.
So for me I use overlays because it works and I haven’t been interesting in determining the root cause and resolution to first class Rust support.
But that begs the question: why do Nix users working on Rust projects resort to community overlays as opposed to a nixpkgs idiom for managing Rust toolchains?
I have because of usability and the nixpkg’s manual guidance.
It recommends installing cargo and rustc directly or using the Mozilla overlay .