The uutils coreutils 0.10.0 (Rust Coreutils) project, a development of the GNU Coreutils package, written in Rust, has been released. coreutils includes over 100 utilities, including sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, and ls. The project's goal is to create a cross-platform alternative to Coreutils, capable of running on platforms including Windows, Redox and Fuchsia.
Rust Coreutils enabled by default in the release Ubuntu 25.10 and partly in Ubuntu April 26.04. Rust Coreutils is also used in the AerynOS (Serpent OS) and Apertis (developed by Collabora) distributions. Unlike GNU Coreutils, the Rust implementation is distributed under the permissive MIT license, instead of the copyleft GPL. Additionally, the same team of developers is developing Rust-based equivalents of the util-linux, diffutils, findutils, procps, and acl utility suites, as well as the sed and login programs.
In the new version of Rust Coreutils:
- The compatibility rate with the GNU Coreutils benchmark suite was 93.48% (down from 90.58%). 645 tests were successfully completed, 20 more than in the previous version (625). 29 tests failed (down from 56), one test resulted in an error, and 15 tests were skipped (down from 8).
- Fixed some discrepancies with GNU Coreutils in the behavior of the pr, nproc, date, numfmt, ls, du, install, od, truncate, fold, head/tail, sum, and stat utilities.
- Work continued to strengthen security to prevent vulnerabilities caused by race conditions, which allow data to be modified after the information has been verified but before an operation is performed. For example, a file could be replaced with a symbolic link between the completion of the verification and the start of the operation. When using the cp, chmod, and mv utilities in system scripts run with root privileges, such vulnerabilities allow arbitrary files to be copied or overwritten. Security has been strengthened for the touch, mkfifo, mkdir, mknod, mv, chroot, head, split, and chcon utilities.
- Work has been carried out to eliminate abnormal terminations via the panic mechanism in the utilities shuf, printf, numfmt, fmt, pr, chroot, dircolors, install, ln, touch, stat, split, expand, more, kill, cp, du, rm, runcon, sort, chown/chgrp, dirname, expr, cksum, dd, truncate, hashsum.
- The performance of the cksum, sum, split, expand/unexpand, base*, tee, cat, cp, mv, expr, uniq, and du utilities has been optimized.
- Added support for the wasm32-wasip2 build target.
- The mv utility implements the "--exchange" option for swapping two files or directories.
- The install utility implements the "--reflink" option and provides the ability to use the "-C" and "--preserve-timestamps" options together.
- The "--one-file-system" option has been added to the rm utility.
- The cut utility provides the ability to work with multibyte encodings when using non-UTF-8 locales.
- The OpenSSL backend is used to quickly calculate checksums.
Source: opennet.ru
