The release of Rust Coreutils 0.9 has commenced: codebase hardening, various security issue fixes, and zero-copy I/O as highlights
Posted by somerandomxander@reddit | linux | View on Reddit | 30 comments
iamdestroyerofworlds@reddit
I'm the biggest Rust fanboy there is but I feel this whole project is just to get away from the copyleft license.
Ok-Winner-6589@reddit
And I don't get why people are doing that for free. Some say that
"Oh but you can create an alternative, it's not like replacing the kernel"
But then ignore that Android uses the same kernel than GNU/Linux and it's almost impossible to change the OS or run AOSP
Same for the alpm implementation. They are just rewritting pacman libraries for no reason and use MIT for no reason. Bunch of assholes
WelpIamoutofideas@reddit
You can never have the MIT version taken away from you. It will always be licensed under MIT.
If someone takes it makes enough changes and improvements so that everyone wants to work with it and not the base project, then closed sources all of their changes, that's their right, they made the work to make those changes better.
But it almost never goes that way, It's usually more economical to share changes so that you can easily benefit from the changes of others, Without having to put a lot of work into backporting changes.
The AOSP Is more difficult to run simply because it runs on devices that just don't have standardized booting or operating behavior. Running Linux on a lot of the devices in a similar boat are just as much of a pain in the ass with just as little Linux distro support. It's a vendor and integration issue. Maybe armbian supports them, but that's basically it as far as third parties go.
Ok-Winner-6589@reddit
And because the firmware and drivers to get location, camera, wifi, GPU, bluetooth and the specific socket Support are not open source. Or should we ignore that?
Oh so if you get a Code, moddify a 10% of It, you have the right to close the source of ALL the program because you improved a 10% of It? Curious. And how do we act when the vendors change a little to kill compatibility with the open source version and now we have to use their closed fork? Or thats no longer relevant?
Because if Linux was GPLv3 we wouldn't be dealing with partially open source kernels on the Android side of Linux. But, for some reason, we have to reverse engineer all the f*ckung hardware to make It work
WelpIamoutofideas@reddit
I mean, even if they weren't, partially or completely closed source drivers in the kernel aren't uncommon. I think you fail to understand that there are almost no fully open source drivers for modern hardware in the kernel. Almost all of them make use of binary blobs to run a micro controller that does the actual stuff when possible. Linux allowing this is what allows vendors to be comfortable actually supporting it. All they do Is upload the firmware and have communicate with the device.
For your second point, you have the right to do whatever you want with the 90% of the software. If you make changes to improve the 10% and wish to keep that 10% to yourself you can. That is legally your code and can be licensed however you wish (GPL only gets mad about your code plus the original).
Theoretically, you could provide patches on a website or a script that users could use to modify and build to do the same thing with a similarly restrictive license for that, and your code.
I think you fail to understand, if Linux was LGPL V3, It would be in the same boat as BSDs were in the 2000s right now. No company would touch them. Hardware vendors don't let you distribute their "closed source trade secret binary blobs" unless you sign their contract saying you won't redistribute outside of your completed product and make an effort to protect it and hide it.
Ok-Winner-6589@reddit
You can not legally integrate non open drivers on the kernel. So no, Desktop and server distros do not include these out of the box precompiled in the kernel. They can be added as modules. But it's not the case. CPUs and GPUs have GPL drivers on the kernel.
You are the one that doesn't understand that what you describe it's tied to firmware and microcode for the CPU, which is different from drivers.
This is incredibly stupid. Do you know Who else said the same about the kernel being GPL? The team behind OpenBSD and Microsoft. "GPL being viral makes It unusable for companies". How? Tell me how. "Oh but they won't be able to close source the software" they are hardware vendors IDK why they fuck do they care that much about their software. It's not making a difference...
What you don't understand neither is that I Talk about ethics, not law. You are closing Code that isn't your for greed. Which is being an asshole
?
Intel, AMD, and now even Nvidia, open source their CPU and GPU drivers. But a motherboard manufacture can not? How? Or a company making wifi chips?
It's way easier to develop these over X86 architecture or GPUs. But somehow it's less likely for them to release software despite nobody is gona use It to copy their products. They just do It for the sakd of fucking their customers.
And I said GPL, not LGPL. LGPL, in fact, allows to include closed source easily than GPL as It was build for libraries so they can be used on closed source software.
Go deffend your billionary companies, they need your free labour to monetize users data with your free product...
WelpIamoutofideas@reddit
Okay, you absolutely can, include non-open drivers, so long as you do most of the driver in that binary blob. Nvidia does this exact thing. There is a reason their binary blob is nearly a gig in size. It is because that's where everything happens, on the GSP, which is also why it only supports turing and up.
All the driver does, is sit there and communicate with the GPU while all tasks managing the GPU are taken care of by a little arm processor inside of it.
The same goes for Wi-Fi cards, to a lesser extent AMD and Intel GPUs. CPU drivers and Microcode. Among whole other classes of hardware.
There is nothing you can glean from those drivers, everything special or interesting, happens in the binary blob. The "driver" is just a loader for the binary blob and a communication API.
If they were actually forced to not allow these binary blobs or include the source, no SOC vendor, no GPU vendor, No Wi-Fi vendor, almost nobody, would even bother supporting Linux.
The information contained In those locked up protected parts, are considered trade secrets. Any optimizations, any of the fun stuff, that's where it happens. Where you can't read it.
Linus has said so himself that that situation would kill Linux.
Ethics are subjective, using different licenses exist to convey differences of intention when open sourcing a project.
MIT and the like are "I give freely in the hopes that it will be useful in your endeavors, no matter what they are." With the bare minimum to make sure you don't get sued for a bug.
GPL has the impression "I open this under the principles of the FSF's pillars of freedom, but I expect that no matter what you do you follow the rules I imposed."
It's a different philosophy for the same action. If I license under MIT, it is simply because I do not care if someone takes my project and closed sources it. Nobody who licenses under MIT cares.
And if we're talking about assholes who re-license, Then I suppose we should just put in a clause to the GPL that states that the GPL can only use GPLed libraries. Because it is just as much of a dick move, to fork a project make all your changes and re-license that project under the GPL. In fact, it's the same situation with a different coat of paint, and yet you guys do this all the time.
Yes, by and large the GPL itself is unusable for companies. In fact, one of the biggest uses for the GPL is to open up a once closed project without letting anybody use it for commercial purposes practically. Most companies sell a product or service directly for monetary gain. Having a GPLed product effectively makes piracy of their product or service legal, on top of potentially exposing trade secrets. Red hat skirts this by technically selling support and some server stuff IIRC, so even if you do pirate a copy, it's largely unhelpful, and at an enterprise scale, having the accountability is worth it.
Ok-Winner-6589@reddit
? What?
Ohhh makes sense thats why we don't have open graphics APIs... Wait we have OpenGL, WebGL, Vulkan... Hmmm and the implementation for Linux and most OS is open source (MESA) except the Nvidia one that still have an open source implementation...
But how is It that Intel is still developing shitty GPUs compared to AMD? They can see the Vulkan implementation vulkan-radeon and the drivers. But still have inferior technology. Curious...
And AMD can not develop as powerfull GPUs as Nvidia despite they can see the official Nvidia drivers (now open source) and there is an alternative open source implementation. Also curious...
Thats why we have múltiple open source reimplementations of these APIs? (Except the CPU microcode).
And even then, the RISC-V architecture is FUCKING OPEN SOURCE. And ARM is owned by a company that sells the architecture. But they have closed source microcode. Whats your logic then, genious?
Linux said a lot of things, included that, múltiple times, admited giving his opinion about things before informing himself about. He blamed GPLv3, for example, for limitations to where you could run the software. Which is something that doesn't exist.
Which is false, the BSD-0 clause only asks the dev using the Code to mention Who was the original devs. MIT has a bunch of extra limitations.
This sounds like AI BS. The GPL only says that the Code other made should remains open, the same ideas behind the MPL 2.0, with the difference that this only applies per file, not per software.
It literally asks to keep the software open. Thats the only condition. Keep the source open as I made It open.
The lack of copyleft is the reason why Opera, Chrome and Edge are closed source, the same reason for Safari to be closed source.
So then say thats the reason don't say all that shit to justify that. Only say "I want others to close source this project". Look, it's quite easy, isn't It?
Funny, you don't care about other limiting others access to the software but you care about others limiting closing the source. Curious... Very curious...
Bu- but muh companies need money! Think on Gates, he needs more money to f*ck these poor kids.
Mac used Bash for years, only changed It because Zsh has a bunch of cool features.
Companies use Linux, they can use FreeBSD, Solaris (they already use mostly ZFS which is a Solaris FS). But they don't. Curious...
Android uses the Linux kernel, again, there are other kernels.
And RedHat does, in fact, develop GPL projects itself, GNOME, KDE all their projects are GPL licensed or LGPL. Looks like you can use It.
Who pays the FFmpeg devs? NOBODY. So they should use MIT over GPL? Oh right Google needs more slaves to develop for free so they can monetize OTHERS work. Are you serious?
You are literally saying that it's an issue that companies can not monetize something they don't make. WTF is your issue? Seriously. Think about It for more than 2 seconds. If thats your issue donate your money to Bezos. Leave the rest of us alone
WelpIamoutofideas@reddit
Have you touched those graphics APIs? I have. They are abstractions over an internal GPU driver representation, You do not have the source code to an opengl implementation. You have a specification that dictates how the function will behave, what parameters it takes, and approximately how to get said function.
The implementation details of that function are a complete black box to the user. There are some user space drivers for those but those call into the kernel drivers, that are again, just A communication protocol and a loader for binary blobs.
Because Vulcan is an abstraction over an internal GPU driver specific API that varies wildly depending on hardware vendor and internal implementation and representation. These gpus do not speak. Vulkan, DirectX or opengl, something translates those into low-level driver calls and commands. The details of most of which are again, inside a binary blob, kept shut.
This is the MIT license: "Copyright
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."
The first part clarifies who copyright belongs to for this code. In other words, who owns it.
The second part states that you must provide attribution.
The third part excuses the original author from legal liability that may otherwise stem from using their code.
There are no restrictions on how you may use it.
I legitimately don't care about limiting modifications to code. You are the only one who seems to. I'm just pointing out that you guys are just as guilty of it.
Again, whether it's right or wrong entirely depends on author's intent and using the GPL describes intent. It is wrong to violate the terms of the GPL, It is not wrong to re-license a project containing an MIT licensed work. Just like it is wrong to not tribute the copyright holder.
It is a difference of opinion specified in a license. Don't treat it as though it's wrong all the time. Companies open source projects so that other companies can use them as well.
People are not assholes for writing their projects in a non-gpl license because of how they see the project.
Ok-Winner-6589@reddit
Old GPUs could load without that and AMD can still do that, just you lose 3d aceleration. For light usage is perfectly functional
Which means that you are forzed to keep original copyright, some licenses don't forze into that. Why not using them?
Have you read the GPL license? I did. There is no such limitation on usage.
The GPL, both v2 and v3 set a bunch of freedoms of usage, in fact, and mention that you must kept them when redistributing. The libre software MUST allow it's usage for any use case. Saying that the GPL doesn't allow that is ignorant
I wanted to show the info but seems like their servers died or something. So this isn't exact:
The GPLv3 deffines a set of freedoms at the start, like freedom to redistribute, copy or use for whatever purpose the software. Including monetization (the FSF doesn't consider as Free any software that prohibits it's monetization BTW, despite whatever you said multiple times).
The It makes whoever is redistributing the software to maintain the above copyright and terms. Thats all. How is It limiting your freedom? Tell me how. I'm waiting
And it's funny how you said multiple stupid thing like how it's easy to "pirate" RedHat. Answer this question. If it's free software HOW THE FUCK DO YOU PIRATE IT???. Thats the whole point of free software, redistributing and forking. But somehow if you redistribute It and It was developed by a company, it's pirating. Wow. And then you try to act as if you weren't a bootlicker.
If companies want to monetize something they should be coding that thing. In what world is It ok to get money from others work without doing a shit?
Anyways... Capitalism is when you steal other work and monetize it
WelpIamoutofideas@reddit
Modern gpus only do 3D, They are general purpose SIMD computers connected by a pcie bus. The days of fixed function limited hardware state are dead, it's emulated. AMD also, doesn't push GPU automomity as hard. Again, Nvidia has a nearly 1 GB size binary blob, currently sitting in the kernel that does everything a traditional GPU driver would do, specifically so they could get out of including said source code.
Some licenses dont require it, and there were many reasons you might want to use it over them. Perhaps you just want to see the satisfaction of seeing your library used in an application, perhaps The other licenses don't include freedom from liability in how your work is used.
Again, most libraries don't stand on their own, and it's the developer's choice if they want to permit other people to take their work and spin it off in a proprietary fork. It is always okay for you to use the GPL for your applications and for anything you make modifications to so long as the original developer is okay with it.
Intel and AMD do the same thing for the vast majority of their hardware, the fact that AMD has a special fallback that makes the GPU half functional in a limited environment is not impressive.
They do code it. Reminder that the original MIT licensed code is still always licensed under MIT in order for it to actually be worthwhile for them to close Source it, they have to make significant usability or feature improvements to make it worth using their version over the MIT licensed one.
If I extend significant parts of a library or an application and the developer permits me to close source and charge for those modifications, that's acceptable.
Microsoft can't just release a version of the library unchanged from the original and just put it under a new license.
I do not believe they offer non-customer accessible downloads to Red Hat Enterprise Linux and/or update servers. You can correct me if I'm wrong. Red hat doesn't want you using them if you are not paying them. I referred to it as piracy because under normal situations it would be considered piracy to redistribute it.
Red hat however makes its money from selling support. Which is pretty much the only way to make money when selling something that must be licensed under the GPL.
murlakatamenka@reddit
I recall pacman / alpm using enough of shell scripts, so moving away from that to Rust sounds like a good change.
Ok-Winner-6589@reddit
And why are they rebuilding It under a different license?
And why does the Germán goverment finance that but not the original project that has been around for more time and is the actually used?
murlakatamenka@reddit
For the license part I don't have a good answer. Rust is MIT / Apache, so that's why plenty of Rust projects use MIT? I'd pick MIT because it's fine for me (as an author) and Gordon Freemen's "alma mater" (yeah, very valid reason, right?).
For me as an Arch user nothing changes. I trust people in charge with that decision.
Ok-Winner-6589@reddit
People doing that aren't part of the official maintainers... They are random guys doing that...
In fact the Arch team already said they have no plans to migrate to these new alternatives.
Paru already had issues because they use Rust almp
And the issue isn't developing them as MIT, the issue is rebuilding GPLed Code under whatever license you like. If you want to develop your own alternative libraries, sure, do whatever you want, but don't create a replacement for existing software ignoring the original team ideas just for no reason at all.
The GPL gives us, as users, some freedoms. When you relicense It you remove these freedoms from us
murlakatamenka@reddit
I thought we were talking about these
alpm-*packageshttps://archlinux.org/packages/?sort=&q=alpm
and I've checked a few of them, they're in Rust.
https://gitlab.archlinux.org/archlinux/alpm/alpm is the source as I looked up
I'm not aware of the rewrite, that makes our thread awkward.
Ok-Winner-6589@reddit
There are not the official ones tho. The package is called libalpm(3)
https://gitlab.archlinux.org/pacman/pacman/-/tree/master/lib/libalpm
Here I see a lot of C files
https://man.archlinux.org/man/libalpm.3
The alpm libraries developed by Arch are included on the pacman package.
Ok I had to check more info, It seems that it's official. I was wrong lol.
I heared somewhere that the rewrite was done by other group, as most Rust rewrites
read_volatile@reddit
I don’t understand why this bad faith argument has endlessly circulated every time this is discussed. The purpose of uutils is to provide a cross-platform coreutils implementation. It’s literally named “u” is for “universal”. The goal is to have feature-parity with GNU tools on all platforms including windows, without having to rely on MSYS2 / POSIX emulation. You can download a single multicall
.exeand get the same behavior forlsas on your Linux machine.I’d be a bit more convinced anybody actually cares about the licensing topic, if someone at least attempted to show consistency by levying the same crusade against Toybox etc. No, let’s just continue to circlejerk about how megacorps are going to bring about the death of open source, because now they can freely reuse Yet Another Reimplementation Of
mv(while still having to disclose attribution mind you). End times, I tell you.iamdestroyerofworlds@reddit
It's ridiculous to dismiss a feeling as bad faith just because you do not share that feeling.
CmdrCollins@reddit
People were rather upset about Toybox for similar reasons back when that project was in the news.
Not that I see a conspiracy here - people aren't making proprietary versions of coreutils because ubiquity is their by far most valuable characteristic in 2026. Nobody sane is solving non-trivial problems by chaining coreutils together unless they desperately want to be compatible with more or less every Linux distro ever made.
((Toybox was/is driven mostly by embedded nerds having virality paranoia, not actual need.))
KrazyKirby99999@reddit
Toybox is largely irrelevant relative to Busybox, and BSD compared to Linux. This isn't a new objection, and there are good reasons to support or oppose it.
Junior_Common_9644@reddit
Yep. And blatantly. 😞
Junior_Common_9644@reddit
Oh don't try to deny it, you little liars.
TRKlausss@reddit
What are the implications here? Why would this be a bad thing? A lot of Rust software is indeed licensed as MIT, and it simplifies compiling statically…
vaynefox@reddit
Any corporate entity can just take the code, apply quality of life patches and fixes on it then not contribute back. It subjects the project to vendor locking and each vendors have different versions of that project that might not compatible with another version of it from a different vendor. This is how Unix died...
zquzra@reddit
MIT license is very corporate friendly, it doesn't stand against value extraction and expropriation. It's a tame license.
GPL is about preservation of a reciprocal commons.
skyb0rg@reddit
There are already many complete and permissively-licensed coreutils implementations, and the uutils project was started before Rust was even stabilized as a programming language! That's some dedication for not wanting to use BSD grep.
derangedtranssexual@reddit
That seems like a good thing IMO, like I’m struggling to think of a realistic scenario where moving away from copyleft for uutils would be a bad thing
One_Recording_1689@reddit
That trend line is satisfying to watch. Getting to 90 percent compatibility with the GNU test suite is actually a massive milestone for a project this size.
Business-Storage-462@reddit
The compatibility numbers are getting genuinely impressive. Replacing decades-old core utilities is one of the hardest problems in open source, so seeing the GNU test pass rate cross 90% is a huge milestone.