Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
It is correct to refer to GNU/Linux as GNU/Linux (ariadne.space)
45 points by Tomte on March 30, 2022 | hide | past | favorite | 78 comments



The core debate here is the meaning of "operating system".

The GNU project does not consider Linux to be its own operating system, because they're coming from the culture of traditional UNIX where the OS interface is libc and the kernel is an implementation detail. Direct descendents of UNIX (for example Solaris and macOS) follow this model.

The article's author, for example, writes:

  GNU/Linux is a distinct operating system in the family
  of operating systems which use the Linux kernel
Linux developers, and many (most?) users, consider Linux to be an operating system in and of itself. It's practical to run a custom-written userland directly on top of the Linux kernel, with no libc or GNU software present.

To someone who thinks of Linux itself as an OS, for GNU to demand co-branding is a bit like asking for the name to be Mozilla/Linux or KDE/Linux. Why should one particular vendor of userland software be treated specially?

The GNU folks are unlikely to win this because they lost the Linux distribution market share decades ago. The most popular Linux distributions are Android (non-GNU), ChromeOS (non-GNU), and a long tail of embedded appliances. Distributions built on GNU libc/coreutils, including Fedora and Ubuntu, are below the noise floor.


I think most people colloquially consider "linux" to mean the whole system, and "linux kernel" to mean git.kernel.org. A distribution is a "linux" with a package manager that you can install on a system, so I would not say Android is a "linux distribution", although of course it distributes the Linux kernel.

Debian is clearly a "linux distribution", so you can have fun things where you replace the Linux kernel with GNU Herd (I'm not sure how viable that is, but there is a project), and you get a "linux distribution but without Linux".


> most people colloquially consider "linux" to mean the whole system

anyone outside Tech says to me: "hey what is this software you have on your computer. It doesn't look anything like windows or mac". Guess what my answer is? Hint: It's never "that's GNU/Linux" because that answer would be over their heads. If I say "that's Linux" most people without any idea will at least have heard the term.

And for discussions with a Tech crowd it is silly to state the obvious. Why waste people's time to point out that my OS has also gnu tools installed as if they don't already know that. It almost looks like virtue signalling because there literally is no other point. Also extra typing that I could dedicate to more useful adjectives to color out my point.


For a long time there was only one or two of each core component in the "hobbyist free-software" space. One kernel (Linux), one libc (GNU libc), one compiler toolchain (GNU GCC + binutils).

Something similar to the "singleton" problem happened, where too many 1:1 layers caused folks to get confused about what each one was. Does an "operating system" mean the kernel? The kernel and libc? Doesn't matter, there's only one of each.

Then the options started expanding. More libc implementations were written for Linux. The GNU libc was ported to FreeBSD's kernel, so now Debian was simultaneously a Linux distribution and a sort of GNU overlay for FreeBSD.

It's time to start using clearer terminology, or we'll never be able to communicate about the actual state of the world. The current state of things seems to be:

* Linux is a kernel, and also an operating system, in and of itself.

* FreeBSD is an operating system, consisting of the FreeBSD kernel, libc, and userland. The FreeBSD project considers the FreeBSD libc to be part of the OS.

* GNU Hurd is (will be?) an operating system, consisting of the Hurd kernel, GNU libc, and GNU userland.

I think you could make an argument that "Linux operating system" and "GNU/Linux operating system" should be distinct, but it's not clear that this would be good for GNU, because that would mean GNU/Linux has ~0.01% of the installed base of Linux.


>Distributions built on GNU libc/coreutils, including Fedora and Ubuntu, are below the noise floor.

This is not true if you consider the server market. Almost all the Linux machines and virtual machines are running the glibc and gnu toolchain. I know that there's alternatives like musl-based distributions, but that's kind of fringe.

In any case, I'm not a "GNU/Linux" promoter. Though I can sympathize with Stallman feeling a little cheated on the naming stuff, especially in the early days when GNU tools were the bulk of the userland. But nowadays, the only strong part of their claim is glibc and the compiler toolchain.

The real reason why GNU has floundered as an organization is that they (and Stallman in particular) are rigidly ideological and difficult to work with.


You might be surprised. What you say was definitely true ten years ago, or maybe even five, but the adoption of containers has changed things a lot.

A container-oriented VM host can boot with a handful of binaries designed to receive scheduled workloads and nothing else. The root filesystem is read-only. Go is a popular implementation language for this stack (look at containerd or kubelet), so no libc. SSH is OpenSSH, shell and init and such are Busybox or similar.

The scheduled containers might contain GNU code if they're using a Debian chroot as a base filesystem, but even that's becoming less popular because it introduces questions of package updates and reproducibility. The container might itself contain just a statically linked binary (Go, Rust, or C/C++ with MUSL) plus its data files.

Right now this approach hasn't filtered down to the hobbyist area yet (except among current or former FAANG employees), but I think in 5 or 10 years it'll be the standard (unless a wildcard like Fuchsia or Oxide's Hubris takes over).


All very interesting. I just want to say that I strongly doubt that non-libc or musl based environments will take over on linux servers anytime soon. Perhaps for narrow use cases, like as you mention, a vm host that only needs to run one binary.


You can doubt but it seems that Go is becoming the de facto language on the server side. Which doesn't use libc.

A lot of systems still run on Java -- I suppose the Linux JVM does depend on glibc, but seriously, in these situations you might as well call it Java/Linux. As I commented elsewhere, arguing that a system ought to put the developer of its C library in its name seems silly when it's just one small component. The GNU ecosystem used to be much more influential in the 90s and early 2000s...


> All very interesting. I just want to say that I strongly doubt that non-libc or musl based environments will take over on linux servers anytime soon. Perhaps for narrow use cases, like as you mention, a vm host that only needs to run one binary.

I think you underestimate the number of services that could be run in this fashion with a much reduced attack surface. It's not at all niche.


The fact that some Linuxes don't use GNU (Android, ChromeOS) can be used as an argument that when GNU is being used, one can (_should_ is perhaps a bit much) mention that it's GNU/Linux to clear up confusion.


Some Windows machines don't have Chrome installed, does that mean those that do should be called Chrome/Windows?

On a nominally "GNU/Linux" installation, Linux is the important part of the stack. GNU software is a small (and shrinking!) part of the userland. I expect this trend to continue as Clang/LLVM pushes out GCC, modern packaging replaces Debian-style dependency resolution[1], and more software moves from C/C++ toward languages that statically link their runtimes (Go, Rust).

[1] Debian-style packaging, where the binaries link against a libc, is a big part of why GNU libc has been considered by some people to be part of the OS. It's not really part of Linux, but if every userland software is written in C and needs a pre-installed libc.so, then you've got to pick one. Nowadays, packaging of userland software is moving toward FlatPak/Snap/etc where dependencies are bundled. libc.so is just another (exceptionally large) dependency in that world, and GNU libc has no more claim to be part of the platform than Bionic or MUSL.


> On a nominally "GNU/Linux" installation, Linux is the important part of the stack. GNU software is a small (and shrinking!) part of the userland. I expect this trend to continue as Clang/LLVM pushes out GCC, modern packaging replaces Debian-style dependency resolution[1], and more software moves from C/C++ toward languages that statically link their runtimes (Go, Rust).

If your getting the userland code from GNU (as is the case with Debian, Fedora, Ubuntu, Arch, Gentoo, etc....), but compiling it with Clang/LLVM, it is still GNU code written by the GNU project. GNU makes up pretty much the entire linux userland on most distributions with the exceptions being distros like Alpine or distros that use BusyBox userland utilities.

NetBSD maintains their own userland utilities, they are not written by GNU. But they are compiled with GCC, does not make them GNU userland utilities.


All of the GNU code on my Ubuntu machine fits in maybe ~100 MB, which is less than any of a dozen non-GNU applications I use day-to-day. It's just not an important part of the userland any more. The world has moved on to GUI tools, of which GNU has only a few (GIMP + whatever parts of Gnome are official GNU).


Ubuntu's biggest use case is more than likely a server accessed by a user of SSH. I use linux and love it, but desktop usage is a small portion of Linux's actual use. Those GNU core-utils userland utilites are an integral part in administering remote machines which makes up the vast majority of the use case.

I'll even defer to Debian's about page, which is where Ubuntu is derived from.

"A large part of the basic tools that fill out the operating system come from the GNU project; hence the names: GNU/Linux, GNU/kFreeBSD, and GNU/Hurd. These tools are also free." [1]

[1] https://www.debian.org/intro/about


Looking at one of my remote servers running Debian Buster, it has about the same amount of GNU stuff on it (~100 MB) and most of that is semi-obsolete tooling that, again, just isn't necessary day-to-day. I could probably purge ~all of it without loss of functionality.

I log in with OpenSSH, which listens on a Wireguard interface. The shell is whatever generic Bourne-alike Debian uses (Ash? Dash?). The administrative tools are all written in Go since they're a mix of contemporary projects (containerd) and my own administrative agents. Primary editor is vim. There's the basic tools (mv, cp) but those could just as easily be supplied by Busybox, which is installed.

It's difficult for me to imagine what sort of server would run GNU software as a majority of its workload, or even just the UX control surfaces. The GNU project has always had a strong emphasis on re-creating the UNIX interfaces of yesteryear, and modern sysadmin practices don't include running m4 or gcc in the same machine that's going to serve traffic.


Does glibc count? If you use systemd, then you are dependant on GNU (as noted in the article). GNOME is becoming more systemd-dependant, so GNOME is also implicitly more dependent on GNU.

Other things include mDNS (what, if anything, does blah.local resolve to on non-GNU systems), libquadmath (which tends to be required more often than people would expect) or GNU-specific flags/behaviours (e.g. GNU tar just does the right thing).

I suspect if you did purge the GNU stuff (baring the things which either require you to specifically say you're fine with the result or remove required software) you'll find lots little things that don't work right, because the GNU code is functionally the only option (missing features, integrations from other software etc.). I don't think GNU is particularly special this way: try going from vim to busybox vi, or looking at how much stuff depends on imagemagick (a.k.a https://xkcd.com/2347/).


You're naming a lot of projects that aren't under the GNU umbrella. Why shouldn't "Linux" systems be called "systemd/Linux" instead? Why not "imagemagick/Linux" even?

It seems very silly to name a family of operating systems just for the C library alone. Sure, there are apps that depend on GNU extensions, but beside systemd I don't know whether the rest are really true. (Pretty sure Vim and Imagemagick work fine without glibc...)

I don't think Richard Stallman would have gone so far to attach the GNU name just because of libc. Back then when he was advocating for GNU/Linux, it was because GNU basically had a unix clone implemented and ready (libc, compiler, shell and common utilities), but people eventually named the system by the kernel, the only component that they failed to get right. At that point it was probably apt to call the system GNU/Linux, but these days when many of the original GNU parts are replaceable or faded into obscurity, I don't know whether the argument holds any more.


Ah, sorry, I probably wasn't clear enough: you can't just count direct dependencies (or install size) when considering something's importance, you also need to consider indirect dependencies (which I think jmillikin is underestimating). I'd also argue in many cases the GNU parts have only been partially replaced, if at all (mDNS name lookups for example).

My example of mDNS is deliberate: doing a name lookup of blah.local can either go though glibc's NSS (musl explicitly does not have NSS), or explicit calls to resolved (glibc only because systemd) or avahi (non-glibc only). Unless everything calls out to avahi, you've can't rely on blah.local working on non-glibc systems.

I used imagemagick as an example (which inspired that xkcd comic) of a project which is a common indirect dependency, and vim (compared with busybox vi) to show the effect depending on extensions (you could use neovim and vim instead, but busybox was suggested as a complete replacement of coreutils). I'm not suggesting either of these are systemd or glibc only.

As to why not systemd/linux: the set of systems where systemd runs is a strict subset of where the GNU software is used, and so you have GNU/Linux systems which are not systemd/linux systems (also, systemd is linux only as far as I know, where as glibc does run on non-linux systems (Debian's GNU/kfreebsd) so it does make sense to have that distinction, where as a system running systemd could be called a systemd system with no loss of generality).

EDIT: It's also worth considering another piece of data: the author is one of the Alpine linux maintainers, they presumably wrote the article for a reason (likely bugs reports either due to people being unable to install/run specific software, or behavioural differences from GNU tools).


> should be called Chrome/Windows

I think you have problems making a difference between a operating-system and user applications, sometimes the lines are blurry, but Chrome for sure is not part of the OS, but one could argue that for example a installed GCC is a user-application.

>those that do should be called Chrome/Windows

Since you installed it it's clearly no part of then distribution called windows.


Or, clear up confusion by not calling Android and ChromeOS Linux? Call them Linux based, or Linux derived.

From my own POV, when someone says Linux, I think of the distros that are by and large compatible, distro packaging formats aside. E.g., when installing Slack by downloading a tar.gz and unpacking it I've never had to worry about it working or not, but then I was doing so on Ubuntu / Arch / Pop!_OS / Fedora.

While I've used Alpine for containers in the past, I was always aware that Alpine was deliberately special and different to be smaller, and because there's a lot of people who dislike , and that if something wasn't available via apk, then I had little

I guess this is like the debate about the drift of the word "literally" to mean "I'm dramatically exaggerating" - there's the people who insist that "literally" has a meaning, and only that meaning, and anyone using it for anything else is wrong, then there's the people who think that how people use a word defines it.

I get the annoyance of the people annoyed by the complete inversion of the word, but I feel like they're like the mythological Canute opposing the tide.

So long as I understand what people are saying when they say Linux, I'm happy - and I've never met anyone who uses "Linux" when referring to Alpine or Android. They always specify that it's Alpine in their container, because Alpine is sufficiently different. Likewise, if someone told you they had a Linux phone, would you think that they're using Android? I wouldn't, I'd think that they had a PinePhone, or something running PureOS.

I realised this debate had name, so googled it, and it's referred to as the the prescriptivist vs descriptivist debate.

I guess I'm on the descriptivist side - unless your descriptive usage is wrong, of course. If you referred to Alpine solely as Linux, but then I couldn't use software on it that I can use on many other Linuxes without recompiling, I'd be a tad miffed.


I think that GNU/Linux is a valuable distinction due to the significance of libc. Alpine keeps uncovering how applications rely on GNU-isms and there seems to be no end to those issues. libc, however anemic, makes a huge difference it seems. Maybe it should be "glibc/Linux" rather than "GNU/Linux"?

However from the Linux desktop end user's point of view, whether a system is glibc-based, or musl-based is less directly significant than whether it is Gnome or KDE-based; alternatively, whether it's systemd or OpenRC or runit-based. So if GNU wants some clout for glibc, then in fairness the name starts to sound more like "GNU/systemd/KDE/Linux" at which point it sounds ridiculous. And for all those components the famous "I'd like to interject for a moment" makes equal sense as for GNU.

I frequently work with busybox-based systems and they're not nearly as different from GNU/Linux as KDE is different from Gnome.


"Linux" typically refers to a standard Linux distriubtion, Debian Linux, Redhat Linux, or even subsets of those like Raspbian. They containing the core element (Linux) and a bunch of stuff on top (often things like X for example)

For Linux without the GNU people typically say "Android" or "ChromeOS".

However calling it GNU Linux is about as sensible as calling it Systemd Linux


Debian's name is "Debian GNU/Linux" though, I don't think anyone refers to it as "Debian Linux".


I think to reply to what you said about why a vendor should be treated specially compared to Gnome/Linux Mozilla/Linux or KDE/Linux is that (and I don't really say that this is correct), you can see and credit Mozilla/KDE/Gnome as something that the users see and interact with and are aware of their contribution, but maybe the GNU userland and especially the glibc is so implied that maybe it's fair to make sure that people are aware of the contributions of GNU in the userland by having it in the name?

And I think it's kinda fair, there is work that is very important and vital to the system or at least has been, that has received free efforts, that maybe being so buried down in the system might never be noticed, that maybe it's fair to have it in the name?


Yes, you can run a Linux kernel with a different user land. But we don't call the result Linux - we call it Android, or ChromeOS, etc. So your comment is an argument against referring to GNU / Linux as just Linux.


Alpine is still called Linux.


I've never referred to Linux as GNU/Linux simply because I dislike the activism behind the term. Also GNU is everywhere once I open my box. There is gnuplot, gawk, gnu-grep, literally every command that I read the man page has added gnu-ish features I'm deeply thankful for. I would have no problem calling it GNU/Linux if it weren't for the people (are there more than just RMS ?) whining about it.

If they really felt it was so important to have the GNU label on Linux they should have made the Hurd kernel as popular as Linux, or put effort into Hurd before focusing on the tools. Or they should have added a sentence in the GPL that enforces it. (wink wink nod nod there are thousands of packages released under GPL so why continue the whining?) Because they never stop whining (and because there is a "debate" in the first place) proves my point that it's perfectly fine (if not my duty) to continue referring to it as Linux.


I will never understand people who have a kneejerk reaction against activism. Pretty much all of our freedoms have been fought for by activists. Sure, activists might not be media trained or have a big budget for effective and well researched media campaigns, but a little bit of cringe is a small price to pay to put people's rights forward. Yeah, RMS acts weird sometimes but pretty much everything he's been warning us about non-free software has come true. We absolutely need more people like him.


I don't deny this. But I'm perfectly capable to appreciate their work while at the same time holding a deep aversion against their pathetic need to constantly be applauded by the masses, so much that it borders on martyrs syndrome. The constant whining like a spoiled toddler when the applause they receive isn't enough (and it never ever is). There are hundreds of brats in Tech with a fragile inflated ego and a massive twitter following. I absolutely feel sorry for them because they'll never be able to see themselves for what they are.

It doesn't matter their cause, their background or their political leaning, it always turns out that if they stay around long enough they are all exposed for their manipulative personalities, their psychotic need to be constantly onstage and idolized.


Sure some people have unnecessarily big egos and people who are public figures are already preselected for that.

But at least activists are working towards increasing our freedoms, as opposed to the people who have even bigger egos, are addicted to having their egos stroked and are working towards reducing your freedoms and owning everything (Musk/Bezos/Zuckerberg etc.)


sure. I don't applaud these other despicables either, fwiw they should be stripped of their assets exceeding 1 Billion (the minute they hit that mark) or they should be fair game to the masses to hunt them down. But hey that's just my opinion as an absolute nobody so it doesn't matter what I think (luckily). In contrast all these people with a god-syndrome think their opinions matter and their sh1t doesn't stink. It is up to nobodies like us to bring them back to reality so they don't ever forget that this isn't some religious cult they're running.

And especially RMS! I happen to have enjoyed his company at a dinner after a linux conf in the 90ies so my opinions about him are extremely harsh. The man is in love with himself and will be happy to walk over anyone younger or more junior than him and he will also not give credit to others. Maybe he changed after all these years but last I heard he was ousted from the FSF for some horrid behavior?

As I said I'm perfectly capable of holding multiple opinions about RMS because it's important to separate the man from his work. But I refuse to answer demands of stroking his ego when what I actually want to do is ask him a series of question about his upbringing and his fragile personality and his relationship to his mother who sadly never slapped him or the dad who he probably never knew.


These days activism is more like: think what I tell you or else you are evil and unworthy of participation in society. So yeah, people are kind of tired of it. It's basically like participating in Soviet-era public ceremonies or regurgitating official party lines. Not that that's what's going on with the "GNU/Linux" controversy, but it's the general phenomenon.

Also, there's an older, I think better, sensibility around still: that controversies should be left to those directly involved with them. Let the distribution maintainers, the FSF, and Linux Foundation sort this out amongst themselves. It's really not my place to be involved in this decision anyway. Not that I don't love sharing my unsolicited two cents online, but some people don't even like that.


People asking for democracy are attacking the monarch!

People asking for the end of slavery are attacking cotton producers!

People asking for a 5 day work week are attacking the factory owner!

This argument is thrown around every time activists are demanding change and is as old as activism itself. It's not a thing that happens "these days" any more than it has happened before.


So indeed, you are more interested in shaming people into submission than in persuading them through discourse. Again, why are you surprised that people aren't so eager to deal with you?

You might think your cause is righteous, okay good. You want to play hardball, fine. But don't be surprised when people don't love you as you condemn them and equate them to slave owners and dictators. You can either treat people like enemies or like friends to be persuaded. But you can't have your cake and eat it too.


If you feel that I'm shaming you, then I must ask what am I shaming you about?


People just have kneejerk reactions against being told what to do and what to think, in general. Doesn't matter if it's right or wrong. It is what it is.


Yeah that's the part I don't understand. Don't the people care whether what they are doing is right or wrong? Don't they have any morals or beliefs on their own? If you decide to do the opposite as you are told, then the other person is controlling you as much as the person who does what they are told.


You mean you want people to think? What a concept! :)


What freedoms am I missing when Linux is not called GNU/Linux?


I was replying to a person who decided to do the opposite because they were told to do something by "whiny activists".


The point of the article that started the thread is that using "GNU/Linux" has become now useful, not in order to acknowledge the activism, but in order to distinguish the distributions/operating systems that are based on the Linux kernel together with the GNU glibc and the GNU base utilities from the distributions/operating systems that use the Linux kernel together with another C standard library and with other base utilities.

The reason for making this distinction is that there are many applications which depend on specific glibc features or on the features of certain GNU utilities and not only on the more widespread POSIX/UNIX standards.

Therefore, it may be useful to be precise and say whether a "Linux" is also a "GNU/Linux", or not, because this may be essential to determine whether a certain application is supported or not on that system.


gnuplot is not part of GNU


well spotted ;)


When the IBM PC came out, I was upset that the term PC began forever to apply only to intel PCs and not PCs generally (previously the term PC meant generically any personal computer)

It was a waste of energy. Battles over word usage may feel like hard work but they don’t produce anything


Don't get me started on "crypto" and "cyber".


for 3 decades IOT meant Inter-Operability-Testing in a Telecommunications context. There where hundreds of people who's job title was "IOT Engineer" and it had nothing to do with the internet of things. Guess they all eventually gave up the fight and changed their career by pivoting into the IoT just so that recruiters leave them alone.


Perhaps I'm wrong but for the Internet of Things, I always use the IoT acronym. And IOT != IOT...


Correction: IoT != IOT


me too but apparently the world does not care about case


> Even between GNU/Linux distributions, compatibility is difficult.

So... what's the point of this nitpicking then, if one GNU/Linux is hard to make work well with another GNU/Linux?

Maybe we can just continuing referring to the GNU/Linux distros as Linux for short, and the non-compatible ones like Alpine and Android can be referred to as... Alpine and Android?


Why stop at GNU/Linux? Why not Firefox/GNOME/X11/GNU/Linux?


It is not about the components that make up a system.

The GNU project started in 1983 with the explicit intent to replace proprietary components of an operating system in order to build a completely free operating system. Can you tell me any other project in the 80s that did that? Of those were any even half as successful as the GNU project? Or still relevant today?

Misunderstanding GNU as a collection of little tools doesn't get you far; the C library, the complete compiler toolchain (binutils + linker + compiler), Unix userspace libraries and shells, etc --- all that got us very close to a completely free operating system in the late 80s / early 90s. Linux arrived in 1991 and in short order we had a free operating system --- with no small thanks to GNU.

The project was so successful that the scope of what makes an operating system kept growing, while people took the foundations for granted. These early achievements stand on their own.


Yes. It's even in the name. As a clone of Unix it's "not Unix", NU, which is homophone, pronounced the same as gnu, the animal. To avoid confusion with the animal, the leading g of G-NU is thus pronounced and audible. Thus "G-NU is not Unix", the Unix system tools clone, lacking a kernel. Then came the Linux kernel. And the gnu projects own "hurd" kernel (a herd of gnus, a microkernel, snicker in gnu). However GNU/hurd systems never took off... You probably know all that, but there is a wide audience following...


I wonder, why does Hurd has such a hard time taking off? Is it just lack of manpower, or did they find some unsurmountable technical obstacle?


There are not many people hacking on the Hurd. There are a couple of reasons for this:

- Linux exists and the expected benefits of the Hurd (e.g. more fine grain virtualization, userspace drivers, etc) aren't enough to mass-motivate people to switch to contribute to the Hurd.

- Commercial support. Getting your contributions into Linux is cool, because you can tell employers that your code runs on millions of computers. Nobody cares that you contribute to the Hurd.

- the most usable distribution of the Hurd is closely tied to Debian, for historic reasons and due to the fact that the most senior developer is a Debian maintainer. This is an obstacle to me, because it means that you can't just take the code from the Hurd repos and build your system. You need to use Debian patches and it's confusing to figure out what code is actually used.

- the famous Critique of the Hurd by former contributors was devastating to morale as it suggested big changes to overcome some denial of service problems. More people explored whether other microkernels could be used and a lot of time was wasted for no perceptible gain. GNU Mach is just fine for the job.

- the Hurd doesn't make use of recent hardware features. That's because of the above issues. Although slow progress is made by a handful of volunteers, there's no 64bit version, no SMP, no booting on ARM, memory / storage limits, etc. Nothing insurmountable.

- no project management. The GNU project is not a "project" and RMS is not a leader. There's neither funding for the Hurd nor is there any form of support from the "GNU project".

Having said all that, there have been exciting developments in recent years. The increasing use of the NetBSD rumpkernel for userspace drivers such as audio and disks (much more recent than the old Linux drivers and ironically more compatible license-wise), Guix System on top of the Hurd, etc. Many Debian-only patches are slowly being accepted in the different upstreams (glibc, libpciaccess, etc) and the project has become easier to contribute to.

Still, the biggest problem is the lack of self-motivated contributors. There are people that think it would be exciting to contribute to the Hurd, but then they end up requiring hand-holding from one of the very few active contributors, so eventually nothing gets accomplished.


https://stackoverflow.com/questions/70649591/can-linux-kerne...

Your platform isn't your optional dependencies.


You forgot systemd.


Gnu/glibc/Linux or BusyBox/musl/Linux would make more sense.


glibc = GNU C library, so GNU/glibc/linux would be rather redundant.


True but you can have Gnu/musl/Linux too...maybe we can call it pure-gnu-toolchain-linux if you want ;)


Ordinarily I’m not this pedantic, but given the subject of this article I just have to point out that it has been incorrect to refer to NVIDIA as nVidia for well over 15 years. Nvidia is what the WSJ and Wikipedia use and seems fine if one objects to all-caps.

But the company abandoned nVidia about a human generation ago.


Can anyone point to where the FSF has indicated that Manjaro is its preferred distribution?


I was curious too. My weak Google-fu didn't come up with anything from the FSF, but the GNU project has a page[0] explaining that they don't endorse Manjaro because it "includes nonfree software through its normal channels", "ships nonfree blobs with its kernel", and "includes a proprietary office suite and proprietary games with DRM."

[0]: https://www.gnu.org/distros/common-distros.en.html


I can't find anything. FSF's site doesn't seem to even mention Manjaro. The only thing I could find that references both the FSF and Manjaro is this article from GNU explaining why they don't endorse any particular distribution:

https://www.gnu.org/distros/common-distros.en.html

Plus as mentioned in the article Manjaro includes non-free software so I doubt GNU/FSF would recommend it even if they did endorse certain distributions.


The author has updated the article to name Parabola as the distribution preferred by the FSF.


There is nothing "technically correct" about having an opinion on how important glibc and coreutils are to the operating system and including an acknowledgment in the name. This is a normative claim that I'm not particularly interest in. I call it Linux and don't plan to change, nor do I roll my eyes into the back of my head when someone calls it GNU/Linux. Okay, I lied about the last part.


Does it say anywhere in the GNU licenses that any operating system or kernel created by the GNU tools must be called GNU/*?

To my knowledge no, thus GNU activist has no case here. You are free to use the GNU tools, in accordance to their license, and name your project whatever but not infringing on other trademarks.


This is not a matter of licensing at all. Nor is it about "GNU tools" being used to create something.


What is about then? Linux uses glibc? Does the license of glibc state that any operating system using glibc requires to be named GNU/*?

Hasn't many of the BSD variants and BeOS/Haiku use(d) the GCC toolchain and glibc?


The GNU activist is claiming a moral, not legal, right


Stallman is not the brightest. He could have easily suggested to call it "nux" written as "gnux". It has "GNU", it has the second syllable of "Linux", but most importantly, it brings it down to one syllable... and is cool.

Instead, he tried to butcher a cool name that "Linux" is by adding capitalized "GNU" and a freaking slash. Why would anyone do that when saying and writing "Linux" serves the same... and if you have to refer to the kernel, you can say "the Linux kernel" or just "Linux" when the context lets you.


From "Free as in Freedom", page 151:

  > At first, Stallman proposed the term
  > “Lignux” – combining the names Linux and GNU – but the initial
  > reaction was very negative, and this convinced Stallman to go with
  > the longer but less criticized GNU/Linux.


I searched this term and found a 1996 email from Linus saying how much he dislikes the term Lignux

https://groups.google.com/g/comp.os.linux.misc/c/Cm15HxjDGRs...


Hmm, "Lignux" is actually pretty clever.


That's actually pretty great.


We need a term for unixy software distributions, or what is vulgarly called Linux. Ubuntu, Debian, Red Hat, Arch are all "linuxes", but so are Alpine and OpenWrt. If you remember early SUSE distributions, they came with binary packages on a CD and no compiler, I would call that also "linux" but only barely. Android is clearly not a "linux". The OS that runs on Quectel cellular modems has a Linux kernel, but unless you gain serial access, there is no "linux".

Controversely, I would also say some BSDs and macOS are, in some fashion, a "linux". Like a wooden horse is a horse, but at the same time it of course isn't a real horse.

For something to qualify as a "linux" in my mind it needs to run most of the GNU/Linux software I need, with little modification. This can be headless software or GUIs. It uses posix conventions ("/" path separator, "/usr" and so on), and it has development tools preinstalled or one command away. There is a command line, and you can use all the familiar tools like ls or vi. That's why I - half jokingly of course - consider macOS to be a great alternative "linux" (although weirdly locked down, and with a lot of NIH proprietary parts). It's also fun TBH to tease the "I'd like to interject for a moment" crowd :-)


In my bubble, and for quite some time, the term unixoid has been used to describe any OS that resembles UNIX - which lines up well with your description of that class of software


Yes, but unixoid reminds me of AIX, HP-UX, Solaris and the likes, which I think is another category. Maybe "linuxoid"?




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: