What it means that Ubuntu is using Rust

Rust rewrites vs. decades of bug fixes

  • Several commenters like Rust-based tools (e.g., ripgrep, fzf) but worry that 20–40 years of hard‑won bug fixes and quirky behavior in C utilities can’t be replicated quickly.
  • GNU coreutils is seen as extremely stable; rewrites must be bug‑compatible, not just standards‑compatible, or they will break real‑world scripts.
  • Example: reports that rust-coreutils dd breaks Makeself/CUDA installers highlight how subtle behavior differences can matter at distro scale.

Rust maturity, safety, and “unsafe”

  • Some argue Rust is no longer “new hotness” — it’s over a decade old and widely deployed (Linux drivers, automotive, etc.).
  • Others point out that Rust’s safety gains rely on avoiding or carefully fencing unsafe; system-level work often needs unsafe, weakening the “rewrite = automatically safer” narrative.
  • There is also concern about projects rewriting well‑working tools “for virtue signaling” rather than clear technical need.

Dynamic linking, ABI, and large systems

  • A long subthread debates Rust’s lack of a safe, stable native ABI.
  • Current Rust interop uses the C ABI, which is as unsafe as C itself and doesn’t expose Rust’s richer type system at dynamic boundaries.
  • Critics say this limits Rust’s usefulness for very large, dynamically linked systems and leads to code and stdlib duplication when many Rust .sos are used.
  • Others counter that C‑ABI + Rust internals is still a major improvement and that fully stable ABIs historically freeze languages (C++ STL).

Licensing, GPL vs MIT, and TiVoization fears

  • Multiple comments object less to Rust and more to Ubuntu adopting MIT‑licensed core utilities instead of GPL ones.
  • Fear: a permissive userland enables locked‑down, non‑modifiable Linux systems (TiVoization-style), especially when combined with secure boot, attestation, and systemd‑centric tooling.
  • Some see this as replacing “pro‑user” GPL software with “pro‑business” equivalents; others argue MIT still keeps original code open and avoids GPL adoption barriers.

Ubuntu/Canonical trust and distro politics

  • Canonical is criticized for a history of pushing immature tech (PulseAudio early, snaps, Mir, sudo‑rs/rust‑coreutils) into users’ default path.
  • Concern that Ubuntu may create a semi‑incompatible Rust‑based userland that fragments the Linux ecosystem.
  • Several commenters say they’ve already switched to Debian, Mint, Fedora, etc., and urge Ubuntu‑derived distros to reconsider their base.

Rust ecosystem, stdlib size, and AI

  • Some feel Rust’s ecosystem is still immature for less common domains, with many pre‑1.0 crates and API churn risks.
  • There's debate over Rust’s intentionally small standard library: some want a .NET‑style rich stdlib; others prefer a “blessed crates” layer instead of freezing too much in std.
  • AI tooling is reported to make Rust more approachable: strict types, good error messages, and compile‑time checking allegedly help agents iterate Rust code to correctness more reliably than dynamic languages.