In C and C++, static linking is relatively unusual. In Rust, it is the norm. I think this language design item matters a lot to the tooling around it. Because executables are single self-contained binaries, you can "just" put them where you want to install them. If they are dynamically linked, you have to organize the dependencies suitably, generate correct RPATHs or such, etc. You have to define what happens when the user "uninstalls X": does it also uninstall its dependencies? Are they shared? Stuff like that gets messy when you want to, e.g., put executables in Linux distros or (IIRC) macOS app bundles, which have their peculiar layout, so there are many cases to consider and a lot of complexity.
Something similar can be said of Python, as an interpreted language where the notion of "linking" doesn't even exist. Python's problems are multiplied by the fact that since Python is too slow for writing performance-critical code, C extensions are everywhere. In Rust, the toolchain doesn't attempt (IIRC) to do anything with respect to non-Rust dependencies like providing them prebuilt or compiling them automatically. In Python, all non-Python packages are expected by Python users to be "pip install"able without a C compiler, and this leads to distributing binaries on the package index, lots of questions about platform ABIs and which libraries should be vendored and how different packages share libraries, etc., which has also chiefly contributed to the Conda ecosystem being created as a parallel universe next to the more standard (PyPA) ecosystem (pip, build, etc.). It also means Python needs to interact with C build systems, of which there are a great many, so there are also a lot of Python "build backends" that exist solely to provide an interface to a specific build system (setuptools has its own build system, meson-python interfaces with Meson, scikit-build interfaces with CMake, pymsbuild for MSBuild, sip for sip bindings to C/C++ libraries built with QMake, and so on and so forth), and that is obviously a contributor to the well-known fragmentation of the Python packaging landscape, which in some ways reflects the underlying fragmentation of the C landscape.
Not to diminish the work of Cargo developers, but I just wanted to explain why, in my opinion, the design of Rust-the-language is a great enabler for simpler tools than what other languages allow for.
Also see this, slide 4, on C++: "Absurd compilation model, weak linkage and module
system, nigh-impossible to write tools for."
With that being said, there are also good ideas in Cargo that, e.g., the Python community is taking inspiration from these days. For example, the idea that everyone should get the language from a single "manager" tool (Rustup) instead of from some vendor like Linux distro, Windows store, Homebrew/Macports, etc. PEP 711