GNU+ or GNU/Linux?
The Great Radar Oven says no to 'GNU+Linux'

Table of Contents

Site Map


This is just a satirical page of my thoughts to add to the classic meme of an argument regarding the nomenclature of GNU being the OS of the Linux kernel.

Although it is mainly because I am recently seeing more people confused about 'GNU/Linux' and 'GNU+Linux' as opposed to just 'Linux'. Hopefully this article might help

Slightly more seriously, I hope to highlight that some of the GNU/Linux community arguments are silly (I am all for it being a meme, but not when people actually get angry about it).


  • Linux …Is the kernel. This software interfaces the operating system to the hardware, allowing programs to run easily and display output to the user. A computer running just the kernel can do very little.
  • GNU …(Recursively standing for "GNU's Not UNIX") is a collection of free (as in freedom) software packages that makes a computer with the Linux kernel more usable for a human. Someone can write a program that will (hopefully) act the same on any computer running the GNU System: They can expect certain behaviour and features from the computer.

    My point is that while the GNU OS needs a kernel, it need not be the Linux kernel. Indeed there is an unfinished GNU-made kernel called Hurd (though it is pretty dead at this point). Similarly, Linux need not use GNU specifically to interface to the user of the computer.

    I.e. You could have a different OS on your Linux computer. It would be confusing if it had the same name, 'Linux distro', as a GNU system.

    As a member of the Church Of Emacs, "GNU IS MY OS, LINUX IS ONE OF ITS KERNELS".

Plain Linux Is Bad

Typically, the user refers to their GNU/Linux system as just a 'Linux distribution'. Understandably, the hard-working GNU developers feel a bit hard-done-by and have for years (correctly in my opinion) argued for the use of 'GNU/Linux distros'.

I feel there should be little debate on the use of 'GNU/Linux' over 'Linux'. It is not really a hassle to type, write, or say, and accredits all of what makes up your OS.

Slightly more recent is the push for 'GNU+Linux'. Users of GNU/Linux already sometimes say one extra syllable is too many, so I don't see how adding another will help matters (the plus is pronounced). More importantly, I think that it makes less sense than a slash.

Why + Is Bad

I think that plus is a confusing way of saying that the software. The truth is that they are separate pieces of software that do different things.

Some people like the mathematical reference, however it suggests that in a GNU+Linux distribution, the pieces of software are independent. Think 'GNU+0' and '0+Linux' whereas in reality, you require both to have a boot-able, usable system.

If you want to refer to both parts in this way, 'GNU&Linux' would make far more sense. However, you should not refer to GNU with Linux this way.

Why / Is Bad

'/' is typically a shorthand way of referring to the word 'or'. This may create the false belief that someone is actually using two independent operating systems, rather than one operating system and one kernel, on their computer.

'&' and, in certain cases, '+' also suffer from this problem.

Why / Is Better

'/'s redeeming feature is that it usually refers to a fraction during programming and typed-out maths. I am not familiar with foreign methods of verbally indicating division, but when referencing large fractions or fractional equations in the UK, it is most common to say "\(X\) over \(X\)" (\(X\) being numbers or algebra).

In a GNU/Linux GNU is a system running 'over the top of' the Linux kernel to allow software to use a standard set of tools and interface to the user. Linux runs 'under' the GNU OS to allow it to use the hardware. I therefore feel that GNU/Linux, meaning "GNU over Linux", makes logical sense (though I would still pronounce this as just "gnu Linux").

It also holds up somewhat when used like an equation.

By removing GNU from GNU/Linux, you end up with 0/Linux, equalling 0. Ergo, you get a computer that may 'boot' but will not be usable.

Conversely, removing Linux from GNU/Linux results in GNU/0, or undefined. You don't even get a real number. Ergo, you get a computer that won't even boot.