Skip to main content


Ubuntu explores replacing gnu utils with rust based uutils


At first I was sceptical, but after a few thought, I came to the solution that, if uutils can do the same stuff, is/stays actively maintained and more secure/safe (like memory bugs), this is a good change.

What are your thoughts abouth this?

https://www.cyberciti.biz/linux-news/ubuntu-to-explore-rust-based-uutils-as-potential-gnu-core-utilities-replacement/

don't like this

in reply to Zenlix

the deGPLification of the Linux ecosystem ffs
in reply to Jumuta

I would love this news if it didn't move away from the GPL.

Mass move to MIT is just empowering enshittification by greedy companies.

in reply to ParetoOptimalDev

What does the license change actually mean? What are the differences?
in reply to SmoothLiquidation

Competitive improvements the company makes make be kept secret, re packaged, and sold without making contributions to the src code.

Basically embrace, extend, extinguish

in reply to thedeadwalking4242

Ideas can only be patented, not copyrighted. If a company designs something novel enough to qualify for a patent, and so good that people willingly pay for the feature, that's impressive, and arguably still a good thing. If instead they design a better user experience, or an improvement in performance, the ideas can be used in open source, even when the code cannot be.

don't like this

in reply to prime_number_314159

Patents kill innovation. No one should be granted rights to a concept purely because they got to it first. It’s still really.

I didn’t even say anything about copyright or patent?

This entry was edited (3 days ago)
in reply to Mactan

It can be forked by anyone, but what is already out there will always be there.
in reply to SmoothLiquidation

Until you're left with choosing between an abandoned open source version and an up to date closed source blob.
in reply to SmoothLiquidation

This entry was edited (3 days ago)
in reply to SmoothLiquidation

Imagine a contributor of the project. He would have been fixing the bug for free and give the work to the public project. Right before he submits the code change, he sees an ad from a big tech bro: "Hiring. Whoever can fix this bug gets this job and a sweet bonus." He hesitated and worked for the company instead.

Now that he is the employee of the company. He can't submit the same bug fix to the open source project because it is now company property. The company's product is bug free, and the open source counterpart remains buggy.

This entry was edited (3 days ago)
in reply to Zenlix

This entry was edited (3 days ago)
in reply to ParetoOptimalDev

Genuinely what negative ramifications could come of uutils being MIT licensed? The kernel license isn't going to change and I really don't see how companies can abuse uutils for a profit.

don't like this

in reply to Jumuta

Kinda like a full 180° back to UNIX™.
in reply to Jumuta

Okay, I'm not a fan of this either but let's not get too worried about this. Everyone's known Ubuntu is a joke for a long time and they don't really have much influence on even several of their downstreams, let alone the rest of the ecosystem.
in reply to Zaemz

Mainly memory safety; split (which is also used for other programs like sort) had a memory heap overflow issue last year to name one.
The GNU Coreutils are well tested and very well written, the entire suite of programs has a CVE only once every few years from what I can see, but they do exist and most of those would be solved with a memory and type safe language.

That said, Rust also handles parallelism and concurrency much better than C ever could, though most of these programs don't really benefit from that or not much since they already handled this quite well, especially for C programs.

in reply to Fonzie!

but they do exist and most of those would be solved with a memory and type safe language.


Maybe.

Still, there are other sources of bugs beyond memory management.

And i'd rather have GPL-ed potentially unsafe C code to... closed-source Rust code.

in reply to 0x0

The Rust code isn't closed source, but I'd strongly prefer a coreutils replacement to use GPL over MIT as well.
in reply to 0x0

To add to @ParetoOptimalDev@lemmy.today

The uutils are MIT licensed, simply put it means “do whatever you want with it, as long as you credit us”.
The coreutils are GPL, simply put “do whatever you want with it but only in other GPL works, also credit us”.

The coreutils make sure forks will also be open source.
While the uutils aren't closed source, they do allow you to make closed source forks.

The uutils' license is too permissive.

This entry was edited (3 days ago)
in reply to Zaemz

See other comments: all these rewrites are not using the GPL but rather permissive licenses like MIT. Bye-bye FOSS (in those ecosystems).
in reply to 0x0

I don't like them moving away from gpl but there were already plenty of non-gpl coreutils clones, so, i'm not sure how much it really matters as long as the linux kernel is still gpl.

Nathan doesn't like this.

in reply to Communist

Unlike the other alternative coreutils, uutils focuses on GNU compatibility. If you depend on GNUisms, uutils allow you to unGNU & unGPLv3+ your system.
This entry was edited (4 days ago)
in reply to ferric_carcinization

I don't understand, you'd still have to completely replace the linux kernel for a situation where this matters to occur, no?

and the linux kernel is where 99% of the work is, correct?

This entry was edited (3 days ago)
in reply to Communist

The Linux kernel is licensed under GPLv2, not v3. The third version of the license forbids tivoization (vendoring unmodifiable copyleft software). Also, the GNU coreutils aren't limited to Linux.
in reply to ferric_carcinization

I know they aren't limited to linux, but can you give me an example of a situation where this matters?

All of the situations I can think of are remedied by the fact that linux is still GPL'd

in reply to Communist

This entry was edited (3 days ago)
in reply to Communist

as long as the linux kernel is still gpl.


I seem to recall some drama about rust in the kernel... what could that mean...

in reply to 0x0

All the kernel Rust code is GPL, so you can leave that slippery slope alone. MIT licenced core utils just leave the door open to eventually using them in the BSDs as well.
in reply to 0x0

That has nothing to do with anything. rust code has nothing to do with the license.
in reply to 0x0

Nothing. The language used has absolutely nothing to do with the license.
in reply to Zaemz

I fear moving away from GPL that moving to Rust seems to bring, but Rust does fix real memory issues.

Take the recent rsync vulnerabilities for example.

cyberciti.biz/linux-news/cve-2…

At least this one in a Rust implementation of rsync would have very likely been avoided:

CVE-2024-12085 – A flaw was found in the rsync daemon which could be triggered when rsync compares file checksums. This flaw allows an attacker to manipulate the checksum length (s2length) to cause a comparison between a checksum and uninitialized memory and leak one byte of uninitialized stack data at a time. Info Leak via uninitialized Stack contents defeats ASLR.
in reply to ParetoOptimalDev

I fear moving away from GPL that moving to Rust seems to bring, but Rust does fix real memory issues.


So you prefer closed-source code to potentially unsafe open-source code?

Take the recent rsync vulnerabilities for example.


Already fixed, in software that's existed for years and is used by millions. But Oh no, memory issues, let's rewrite that in ! will surely result in a better outcome.

in reply to 0x0

Already fixed, in software that's existed for years and is used by millions. But Oh no, memory issues, let's rewrite that in ! will surely result in a better outcome.


Rsync is great software, but the C language fates it to keep having memory issues in spite of its skilled developers.

Preventing a bug from being possible > fixing a bug.

in reply to 0x0

Rust isn't language of the month unless you've been asleep for a decade, old man

What about the rust version is closed source?

This whole post is very disingenuous.

Edit: oh you're a troll

This entry was edited (3 days ago)
in reply to Zenlix

So i hear that removing all the gnu stuff opens linux to be redistributed with a bew liesinse like mit. Which means its a little more closed iff a little more monitized.

Not knowledge enough on my own to know for sure. If someone with more knowledge could explain.

in reply to joel_feila

This is one of the old-time original arguments in the OSS community.

The crux of the matter is that the GNU licenses require that modifications be released back to the community. Other "more permissible" licenses like MIT do not.

So if you want to make a commercial version of X, and X is under a GPL, then any changes you make need to be released under the GPL. The idea being "I shared this code with the community with the intent that you can use it for free and modify it as you like, but you need to share back what you do." Also called "Share and share alike".

This defends against "embrace, extend, extinguish" tactics that companies like Microsoft has loved to do. They can't take your code, modify it for their own purposes and re-sell it possibly making a more popular version that is now proprietary.

in reply to atzanteol

Somewhat ironic example.

X (Xorg) has been MT licensed for 40 years. So is Wayland. So is Mesa.

I think Xorg is a good example of the real world risks for something like core utils. If you did not know or care until now that X and Wayland were MIT licensed, you probably do not need to care too much about utils licensing either.

This entry was edited (3 days ago)
in reply to LeFantome

Here's a better example: the use of GPL software (primarily Linux and busybox) by Linksys when they made their wrt54g router was used to compel them into releasing the source code of the firmware for that router. Subsequent GPL enforcement by the SFC made Cisco release full firmware sources for a whole series of Linksys routers. Thanks to those sources openwrt, ddwrt and several other open source router firmwares developed.

I can now run three openwrt routers in my home purely thanks to the GPL. If those projects had been MIT licensed, Linksys and Cisco could have just politely told everyone to go suck a lemon because they would have had no obligation to release anything.

in reply to joel_feila

The Linux kernel still is and will always be GPL. It really doesnt matter if the coreutils aren't.
in reply to Gork

The time has come to GNU-slash the enemies of freedom!
in reply to Gork

It's funny since don't these core utils come from bsd meaning the new license is more like the original license than gpl is like either. So didn't gnu effectively steal the code and change the license for political reasons?
in reply to DeuxChevaux

Likely not anytime soon as they tend to hold off latest features and prefer older (but maintained) LTS versions of just about everything.
Also especially not if it turns out to be a bad idea; they explicitly build Mint without Snaps since their inclusion in the Ubuntu base.
in reply to DeuxChevaux

As I recall Ubuntu will allow to switch uutils to coreutils. So it looks like Linux Mint will continue to use coreutils
This entry was edited (3 days ago)
in reply to DeuxChevaux

Mint is basically Ubuntu with all of Canonical's BS removed. This definitely counts as Canonical BS, so I'd be surprised if it made its way into Mint.
This entry was edited (4 days ago)
in reply to suicidaleggroll

Canonical making open source software that is more secure than the code it replaces and offering it for free is canonical bs? If so give me more.

Here I thought canonical bs was just that stupid docker snap thing they did.

This entry was edited (3 days ago)
in reply to Zenlix

The correct title should be "Ubuntu explores replacing gnu utils with MIT licenced uutils".
in reply to Arehandoro

Waiting for Canonical to up sell proprietary utils features by subscription. Ubuntu's regular release cycles were brilliant in 2004 when there weren't a lot of alternatives but why does it still exist?
This entry was edited (3 days ago)
in reply to shirro

Sorry, "tee" is not part of the basic Ubuntu package. Do you want to unlock premium coreutils for the cheap price of 19.99$ p.m.?
Alternatively, upgrade your Ubuntu pro to pro-double-plus-good for 10$ p.m.
in reply to Zenlix

My scepticism is that this should've been done within the coreutils project, or at least very closely affiliated. This isn't an area of the linux technical stack that we should tolerate being made distro-specific, especially when the licensing is controlled by a single organisation that famously picks and chooses its interpretation of "FOSS" to suit its profit margins.

On a purely technical level, GNU coreutils should very seriously consider moving to rust if only to counter alternatives before it's too late. While these utilities work well in C (and usually stay secure thanks to the Unix philosophy limiting the project scope), FOSS projects are continuing to struggle with finding new contributors as younger devs are more likely to use modern systems languages like Go and Rust. Not to mention that any project using Rust as a marketing tool will appeal to anyone rightfully concerned about hardening their system.

This entry was edited (3 days ago)
in reply to Zenlix

I'm mixed on it. If it is more secure/safe then that's a good thing, but if it's done because it's MIT-licensed instead of GPL-licensed, then that could possibly be concerning.
in reply to Zenlix

On the one hand, Toybox exists. So, the non-copyleft license bs isn't new. On the other hand, toybox afaik isnt aiming to treat "deviations with GNu as bugs". Almost feels hostile-takeover-ish though I know that almost certinly isn't the idea behindbit.

If this ends in proprietization bs I'm going to throw hands.