Rust Takes Root in Ubuntu 25.10

Ubuntu embraces a Rust-based approach, introducing oxidizer for safe experimentation with new system utilities in 25.10.

Ubuntu (and almost any Linux distro you can think of) has traditionally shipped GNU Coreutils by default. For the unfamiliar, these are fundamental tried-and-true tools, such as ls, cp, mv, and so on, that have defined the Unix-like experience for decades.

However, recent efforts like uutils’ re-implementation of these tools in Rust signal a major transformation on the horizon. In light of this, starting with Ubuntu 25.10 and continuing into Ubuntu 26.04 LTS, if everything goes according to plan, the distro is set to adopt some of these Rust-based tools as the new default.

In a blog post named “Carefully But Purposefully Oxidising Ubuntu,” Jon Seager, Software Engineer at Canonical, shared:

Starting with Ubuntu 25.10, my goal is to adopt some of these modern implementations as the default. My immediate goal is to make uutils’ coreutils implementation the default in Ubuntu 25.10, and subsequently in our next Long Term Support (LTS) release, Ubuntu 26.04 LTS, if the conditions are right.

Okay, but why make the change? Although improved performance is often cited as an argument for “rewriting in Rust,” according to Seager, the deeper motivation lies in Rust’s safety guarantees. More specifically, Rust’s type system and borrow checker encourage inherently safer and more resilient code, reducing the risk of memory-related vulnerabilities.

That alone makes it especially appealing for foundational system components, given their critical role in keeping millions of Ubuntu-powered devices secure and reliable. However, to make this transition smooth and relatively risk-free, a new command-line utility named oxidizr has been created.

In short, it allows users to switch between traditional and Rust-based implementations of Ubuntu’s basic tools with minimal hassle.

The new tool revolves around the concept of “Experiments,” whereby each experiment corresponds to an alternative Rust-based package (such as “rust-coreutils” or “sudo-rs“). Users can enable or disable individual experiments at will, making it easy to roll back to the old utilities if compatibility issues appear.

Similarly, disabling an experiment reverts the system to its previous state by restoring the backups and removing the Rust-based packages.

One thing’s for sure—Rust is gaining serious momentum among developers and is making its way into more and more areas of software development. As you probably know, it’s already found a place (though not without some drama) in a major component like the Linux kernel.

And it’s just getting started—over time, we’ll likely see more and more C-based components being replaced with Rust alternatives. Now, when Ubuntu is taking a big step in that direction, it’s only a matter of time before other distributions follow suit.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.