Minus gnu

So the discussion about stall man’s joke is still on going. But it made me wonder, what do you actually need from gnu these days. The biggest thing was gcc but we have clang now. Core utils, can be replaced with busybox or toybox.
Binutils can be replaced with elf tool chain.

I guess the only thing too embedded to change is gpl…

How hard would it be to replace gnu in Ubuntu?

From wikipedia
The system’s basic components include the GNU Compiler Collection (GCC), the GNU C library (glibc), and GNU Core Utilities (coreutils),[11] but also the GNU Debugger (GDB), GNU Binary Utilities (binutils),[36] the GNU Bash shell[31][37] and the GNOME desktop environment.[38

They talked about this on the LateNightLinux podcast not so long ago after RMS refused to do an interview (they refused to call it LateNightGNU/Linux) and Ikey (the main Solus developer/contributor) said that if he wanted, he probably could find alternatives to everything GNU if necessary.

5 Likes

Neither clang, nor busybox, nor toybox, nor the elf toolchain are drop-in replacements for the GNU equivalents. You’d end up having to make a lot of changes to the system besides just replacing these tools. It’s totally doable though, just a lot of work.

Edit: what you could do is use a linux kernel with something like an OpenBSD userland minus gcc.

2 Likes

How much work do you think it would be? Far as I can see busy box could be a drop in replacement. Not tested this theory though.

Getting something working for just a single person won’t be hard, getting it working for most people will be. Lots and lots of testing would be required.
Busybox isn’t really a drop-in replacement, the output of a lot of the commands it provides differs from the ‘real’ commands, as do the commandline switches of those commands. This would most likely break a lot of shell scripts.

There are a lot of dependencies on GNU software that are not easily overcome. First of all, let’s not forget about all of the libraries running in the background. Some, like readline have replacements. Others are tightly coupled with the applications relying on them. For example removing GTK+ would break scores of other programs.

But perhaps most importantly the Linux kernel itself relies on GNU: Right now it can only be compiled with GCC, so while clang is constantly improving it’s not a GCC replacement yet.

How much of this is true for the BSDs as well?

I think I remember hearing that they prefer raw makefiles over autoconf/./configure when possible, and they certainly don’t use GNU bash.

@BGL that’s a pretty awesome podcast there, thank you for mentioning it.

Are gnu libs inferior? What are the benefits to changing to an alternative? Is there some moral principal here or is this speculation of possibilities out of spite?

Just seems like the effort could be better spent elsewhere.

3 Likes

It’s not so much about the operating system as it is about third party applications. The BSDs have their own kernel, shell, shell programs, etc, but you’d still use say Firefox on BSD.

Nobody in their right state of mind uses autotools :slightly_smiling_face:

1 Like

musl libc has a different licence and seemingly better standards compliance in some aspects (musl author’s comparison) so that might also be a motivation for switching that.

Also, in general, interoperability encourages good code, so testing alternative components is a good thing in my book.

I think they also have their own libc’s, so I wonder how that affects support of something like Chromium, since the LateNightLinux podcast @BGL linked mentioned Chrome being tied to GLibC.

I thinklinux should dump GNU in total and move to the BSD license, but I´m also odd.

1 Like

IMO I think it would be easier to just make a new Linux distro and build it to be GNU free using a BSD license than it would be to try to convert any current Linux distro. Doesn’t really matter to much to me since I can just Make whatever on a linux system I want and do a BSD license anyways.

Well not completely gpl free but as close as can be.

Thanks for the podcast drop mate in your comment here.

Been looking for a decent Linux related podcast for a “minute” now.

Neither spite nor ignorance of their importance. A technical question.

Lmao I keep thinking this shit can’t be real but then you hear the dude speak about this nonsense proudly. Epic face palm gnu/brosef.

Probably a few iterations. Problem is the vocal minority hate Ubuntu as it is and continue to cause the distro, its users, and its supporters grief. If they went to remove GNU from the distro they would probably go out of business.

Or sell to Microsoft.

If you’re talking Linux, the kernel is GNU licensed, as is the C library it uses, so you’re boned there - you need to switch kernels.

If you’re interested, check out FreeBSD or the other BSDs as they have been actively attempting to de-GNU-ify for several years now.

Much of their userland is BSD derived (as in, original BSD), but i think there’s still a little GNU in there depending on what you’re attempting to do with the box.

Last i checked, the base system for FreeBSD is almost GNU free, maybe even there now. They ripped out GCC and replaced with clang years ago.

Of course if you want to run stuff like Gnome, or most of the X11 window managers or desktop environments, etc. you may be forced back to GNU software. But if its a headless box you could probably be almost entirely GNU-free.

I really like ubuntu server.

If you were to try and remove the GNU from ubuntu there wouldn’t be much left.

The package manager, the desktop environment, the kernel, systemd, the shell, etc. are all GNU licensed.

If you want a non-GNU (but open source) operating system then best place to try and start is FreeBSD. But even then if you want a desktop environment you’re pretty much stuck with GNU for the ones that don’t suck.

This is about software by GNU, not programs merely using GNU’s licenses. The OP specifically said that the GPL is okay.

But since Linux cannot even be compiled without the GCC talking about userspace is rather superflous

1 Like

How does one determine the difference between software “by GNU” and software merely using the license?

I consider them one and the same… it’s not like GNU is a company with a fixed membership…