[KongchangAI]
· 1 min read· 934 words

Fedora Developer: No One Is Seriously Considering Rust Versions of Core Tools as Replacements

Fedora Developer: No One Is Seriously Considering Rust Versions of Core Tools as Replacements

Fedora senior developer criticizes Rust clones of sudo and coreutils as unviable, advocating cautious replacement.

The article centers on a senior Fedora developer's public criticism of Rust rewrites of core toolchains (sudo-rs, uutils). He argues these clones suffer from deliberate breakage, incoherent compatibility, and long-unfixed issues, so no one would seriously consider replacing mature tools with them. It contrasts Ubuntu's forced push of Rust versions before maturity with Fedora's caution due to its RHEL upstream role. The criticism focuses on project quality rather than Rust itself, and mentions community concerns over uutils' GPL-to-MIT license change. The author ultimately asks what the benefit of replacement is: without performance gains or new features, forced replacement is uncompensated regression.

A Public Statement on Rust Clone Tools

A senior developer who has been deeply involved in the Fedora project for decades recently expressed a clear view on Rust rewrites of core toolchains (including sudo-rs and uutils): no one would seriously consider replacing existing mature tools with these Rust clones. This statement stems from his direct response to the long-accumulated issues in the sudo-rs project, and also reflects the deep divisions in Linux distributions' technology choices.

I wanted to call this out because I have many criticisms of Fedora.

The developer's original words were quite blunt: the sudo-rs project is troubling on multiple levels, the project itself may never be fixed, and Fedora is considering switching precisely because it is completely incompatible with FreeIPA and SSSD's sudo integration. He further pointed out that both uutils and sudo-rs are unviable options due to "deliberate breakage" and "incoherent compatibility issues."

sudo-rs is a Rust rewrite of the sudo implementation, part of memory safety initiatives like Prossimo; uutils is a project to rewrite GNU coreutils in Rust, aiming for command-line behavioral compatibility with the original. Both are positioned as "drop-in replacements" rather than new tools built from scratch. Because of this, they must first be consistent with the originals in argument parsing, error messages, permission semantics, and edge-case behavior—any deviation affects scripts, packaging systems, and operations workflows. This is also the technical premise behind the criticism that "the clones themselves are incomplete."

Ubuntu's Aggressiveness vs. Fedora's Caution

This stance contrasts sharply with Ubuntu's approach. Ubuntu forcibly pushed Rust versions of sudo and coreutils before the Rust clone tools were mature, when these tools were still full of bugs and not true drop-in replacements, causing a lot of trouble for users.

According to the developer's analysis, Ubuntu's approach amounts to actively choosing worse software—fewer features, no new capabilities, yet making everyone's work harder. From an engineering perspective, this even complicates Ubuntu's own maintenance work, because supporting these immature clones requires extra investment.

Fedora's cautious attitude has its practical background: as the upstream testing and build base for Red Hat Enterprise Linux, Fedora must maintain a certain degree of backward compatibility. In this position, rashly replacing core system tools means actively introducing uncontrollable risks.

It was nice to see this sort of reasonableness.

FreeIPA is an integrated identity management solution, and SSSD is a system daemon responsible for interfacing with various identity and authentication backends (including LDAP, Kerberos, FreeIPA) on Linux clients. sudo policies can be centrally issued and managed by these systems, and sudo's own plugin and configuration interfaces need to work with them. If a replacement implementation is incompatible with such integration interfaces, what's affected is not just single-machine sudo usage but the entire chain of centralized authorization in enterprise environments—precisely the part Fedora must treat cautiously as an upstream for RHEL.

Technology Choices Should Not Be Swayed by Language Preferences

It is worth noting that the developer's criticism is entirely focused on project quality, not on the Rust language itself. He did not say "Rust is bad so don't use it," but pointed out specific engineering problems: bugs, incoherent compatibility, deliberate breaking changes.

One point specifically mentioned is the license change issue. uutils switched from a GPL project to the MIT license, which sparked strong dissatisfaction in the community, and the developer himself explicitly stated that this holds no appeal for him.

This kind of matter-of-fact engineering judgment is particularly rare in the current wave of Rust rewrites. The video author also admitted that he has many criticisms of Fedora and Red Hat behind it, but this statement is indeed "refreshingly reasonable."

Or at least that you really want.

The difference between GPL and MIT on system tools is not just the degree of permissiveness. GPL requires that derivative works be open-sourced under the same license when distributed, which is often seen as imposing a "give-back" constraint on downstream vendors; MIT allows closed-source redistribution. Core tools moving from GPL to MIT changes the boundaries of vendors' obligations when building products on these tools. Therefore, the community's sensitivity to uutils' license change is essentially a concern that the incentives for ecosystem governance and contribution backflow will be weakened, not merely a dispute over license text.

Where Is the Benefit of Replacement?

The video author raises a sharp question: if Rust clone tools could bring measurable speed improvements or eagerly anticipated new features, then the trade-off would be understandable. But the reality is that these projects are positioned as direct clones, yet even the cloning itself is incomplete, while they disrupt the existing ecosystem.

No new features, no significant performance advantages, no user experience improvements—under such premises, forced replacement is essentially replacing good software with worse software, with no compensating benefits. This is not a product choice but pure regression.

This isn't an official statement, but it is a very long time Fedora developer.

Implications for the Distribution Ecosystem

It should be noted that this is not an official Fedora statement but the personal view of a highly prominent long-time developer. Yet its weight cannot be ignored—it represents enterprise-level Linux distributions' commitment to the principle of stability first.

The video author expresses cautious optimism at the end: if more distributions can return to this kind of decision-making centered on engineering rationality rather than being swept along by technology trends, the Linux ecosystem might avoid some detours. For systems that need to maintain reliability in production environments, this "reasonableness" is itself a valuable quality.

One-line Summary

A senior Fedora developer criticizes Rust versions of sudo and coreutils clones as unviable and advocates cautious replacement.

#Fedora#Rust#sudo-rs#uutils#Linux distribution
Share:

Related articles