Ubuntu going Rust

Trynna3

Active Member
Joined
Jun 5, 2024
Messages
189
Reaction score
75
Credits
1,869
Just heard the news. Having a limited knowledge and reading comments online, people aren't particularly enthusiastic about this, some leaving Ubuntu because of it.
What are your views on this?
Still considering another distro for my main system, came across Zorin OS as looking more modern than LMDE and better with newer hardware, but hesitating, hearing the negativity about the future of Ubuntu. Also their push for Snaps as opposed to Flatpak. After all there was a reason I went for LMDE to learn on, rather than Mint based on Ubuntu.
 


They are not going full rust, just some components will be written in rust. I would not panic just yet.
Rust is an up and coming programming language and it will eventually makes it's way into other distros as well.
But I can understand your aversion to Ubuntu as I've not used it except on with Mint in quite some time. Just because they start things and abandon them. I don't like many of there choices lately. But that's just my opinion.
 
They are not going full rust, just some components will be written in rust. I would not panic just yet.

Rust is an up and coming programming language and it will eventually makes it's way into other distros as well.
But I can understand your aversion to Ubuntu as I've not used it except on with Mint in quite some time. Just because they start things and abandon them. I don't like many of there choices lately. But that's just my opinion.
There already exists a rust replacement for the GNU coreutils in debian:
Code:
$ apt show rust-coreutils
Package: rust-coreutils
Version: 0.0.27-3
Priority: optional
Section: utils
Maintainer: Debian Rust Maintainers <[email protected]>
Installed-Size: 22.4 MB
Depends: libc6 (>= 2.39), libgcc-s1 (>= 4.2), libselinux1 (>= 3.1~)
Homepage: https://github.com/uutils/coreutils
Download-Size: 4,835 kB
APT-Sources: http://ftp.au.debian.org/debian trixie/main amd64 Packages
Description: Universal coreutils utils, written in Rust
 This packages replaces the GNU coreutils package written in C.
 It should be a drop-in replacement but:
  * Some options have NOT been implemented,
  * Might have important bugs,
  * Might be slower,
  * Output of the binaries might be slightly different.

The rust utilities in debian are also quite extensive:
Code:
$ apt show rust <TAB>
rust-all          rust-coreutils    rustfilt          rust-lldb         rustup
rust-analyzer     rust-diffutils    rust-findutils    rust-llvm         rusty-tags
rustc             rust-doc          rustfmt           rust-src         
rust-clippy       rustdoc-stripper  rust-gdb          rust-toml2json

It means that the "GNU/Linux" expression will lose the "GNU" in some contexts after a long period of dominance.
 
Yeah, Rust is now in any modern kernel. Anything newer than 6.1 has Rust. It's mostly in the drivers at this point, but will expand to other code as well.

There are lots of detailed reasons why developers want to use Rust. You can use a search engine as it'd take too long to detail them here.
 
Fedora at least 42 beta has the same utils written in rust.
 
Ok, so it isn't that bad then? See how media hype everything these days.
 
Ok, so it isn't that bad then? See how media hype everything these days.

Nah, Rust is pretty good. It's also not really 'new' (unless you want to compare it with older languages, I guess). It's a robust language with some failsafe features built-in. It makes for optimized code that has fewer bugs.

These decisions to move to Rust weren't made in a vacuum but are being made by the developers themselves. It's not like, at least in this case, a pointy-headed-boss is just drinking the Kool-Ade and handing down decrees to make the devs use Rust. It's that the devs themselves want to use Rust.

There are many pages like this, but this is the one I decided to link to:


It was also the first one I checked. Skim through that. In particular, you can scroll down to see why it's so popular.

Rust is a good thing.

Something will replace it in the future.

"The king is dead. Long live the king."
 
Ok, so it isn't that bad then? See how media hype everything these days.

Rust is "bad" if you're a stick in the mud and/or too set in your ways to learn something that isnt c/c++. that's literally all it is. anything else is hypetrain material
 
Ok, so it isn't that bad then? See how media hype everything these days.
On the particular issue of ubuntu heading towards using the rust version of coreutils, the aim is to have the uutils (coded in rust) replicate the coreutils (coded in C) so that the uutils version can replace the coreutils version without any difference in utility.

There's been quite a bit of discussion on the issue such as that on youtube in the Lunduke Journal, Brodie Robertson and Distrotube channels a well as in various mailing lists.

Without going into the issues of rust versus C coding, what else is of interest to me is that uutils is covered by the MIT licence whereas coreutils is covered by the GPL. The significance of that is that the MIT licence is a much freer licence where an individual or company doesn't have to provide the source code if they use it and modify it and release it. For example, they can modify it at will, keep their code private and include it in a proprietary release. There are also no enforcement provisions in the MIT licence, so action cannot be taken against users of the code. The GPL, on the other hand, mandates the provision of the source code when any is modified and distributed. The difference in philosphy is significant in my view with the GPL licence being focused on preserving free and open source software, with the MIT licence basically enabling a free-for-all for developers and proprietors with no obligation for them to contribute back to the free and open source community from whom they have benefited so much.

One can imagine how in the future, a company could take the uutils code, enhance it, and keep the enhanced version exclusively in proprietary releases for commercial purposes. The free and open source community would have no recourse to this under the MIT licence. I can't imagine that the relevant ubuntu people weren't cognisant of this when making their decision.
 
Last edited:
@osprey
Yep, that was part of the issue, open source enthusiasts losing trust and wanting to go a different direction. It seems to be the trend these days: corporations take advantage of a free source, paste their mark on it and suddenly you need to pay for it. And if someone reverse-engineers the new thing, they call it a theft
 
what else is of interest to me is that uutils is covered by the MIT licence whereas coreutils is covered by the GPL. The significance of that is that the MIT licence is a much freer licence where an individual or company doesn't have to provide the source code if they use it and modify it and release it. For example, they can modify it at will, keep their code private and include it in a proprietary release. There are also no enforcement provisions in the MIT licence, so action cannot be taken against users of the code. The GPL, on the other hand, mandates the provision of the source code when any is modified and distributed. The difference in philosphy is significant in my view with the GPL licence being focused on preserving free and open source software,

I know the source code for these is different (how much different? I don't know) for BSD distro's like freeBSD and NetBSD, It would be a pain to rewrite these from scratch, but it would seem that rust is exactly that. Different source code to accomplish the same thing (binutils, coreutils, etc...) Another (rumour?) is that rust often produces smaller, faster, more efficient binaries than rust? (I haven't seen much to confirm that).


 
I can't imagine that the relevant ubuntu people weren't cognisant of this when making their decision.

Oh, you can be sure they were aware of this (see below). The MIT license is similar to the BSD license.

This means that businesses can use the code without having to give back to the project. Some see this as more free but the GPL is more about freedom for the code while the MIT license is freedom for the developer. It's a different kind of freedom and one of the reasons why we have so many different licensing options.

It's important to remember that we're not obligated to help the project in any way. The people working on this know the license. They know that their contributions could be used by somebody else and that that person may not give anything back to the project. They choose to contribute while knowing this. It's not 'unfair' or anything like that.

Are we sure that Ubuntu is behind the Rust version you mentioned? I'm not seeing their name on the project page that was linked to.
 


Staff online


Top