Jon Seager, Vice President of Engineering at Canonical and Technical Lead for the project Ubuntu, presented an initiative to replace Ubuntu system utilities to their counterparts written in Rust. The initiative's stated first goal is to translate Ubuntu 25.10 to use the uutils toolchain by default instead of the GNU Coreutils suite. If this experiment is deemed successful, uutils will also be used by default in the LTS branch. Ubuntu 26.04.
The replacement will affect over a hundred utilities included in Coreutils, including sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, and ls. Currently, uutils utilities are already used by default in the Apertis distribution, which is based on Debian, as well as in the independent distribution AerynOS (SerpentOS). The release of the uutils coreutils package 0.0.30, published last week, successfully passes 507 tests (in the previous release it was 506, in the one before that it was 476) from the GNU Coreutils benchmark suite. 69 tests failed, and 41 tests were skipped. Work on a replacement is also planned for the coming weeks. Ubuntu su and sudo utilities to the sudo-rs package. Of the projects under consideration, zlib-rs and ntpd-rs are also mentioned.

The reason for the migration is said to be the desire to improve the reliability and security of the utilities that underlie the distribution. Using Rust will reduce the risk of errors when working with memory, such as accessing a memory area after it has been freed and going beyond the buffer boundaries. According to John Seeger, protection against such errors will increase security guarantees, and with increased security, the overall reliability of the system will increase.
It is noted that Canonical is considering various methods of improving quality, and one of them is the delivery of programs that are initially developed with an eye on security, reliability, and correctness. This is especially important for the basic components of the distribution, since if problems arise in low-level software, these problems affect the work of all higher layers, for example, if there are problems with performance in the basic packages, they affect the performance of other subsystems.
To test the replacement in Ubuntu The oxidizr project, which provides command-line tools for managing system experiments related to replacing traditional utilities with alternatives written in Rust, has been developed for system components. Currently, oxidizr offers experiments for switching to the default use of the uutils, coreutils, uutils, findutils, uutils, and sudo-rs packages. For example, to replace coreutils and findutils on your system, simply run the command "sudo oxidizr enable --experiments coreutils findutils," and to revert to the default state, use the command "oxidizr disable."
Source: opennet.ru
