You're interested in Linux and have read a few blog posts. Along the way, you've come across a funny name: GNU/Linux. What do those letters mean, and why do people keep appending them to Linux?

This is a simple question, but the answer brings us to a debate that has persisted in the Linux world for decades.

What Is GNU/Linux?

GNU/Linux is a name given to a free and open-source operating system more commonly known as "Linux."

When used to refer to the general operating system, the terms "GNU/Linux" and "Linux" are interchangeable. But there are many different parts that go into making a fully functional OS. Arguably there is more GNU than Linux in GNU/Linux, which is why the issue of what to call the OS isn't as simple as it sounds.

What Is the "GNU" in GNU/Linux?

The decade is the 1980s, and the computer industry is in a period of transition. A Supreme Court case involving Apple ruled that binary programs (the kind of software that differs from source code by being executable) can be copyrighted. Microsoft released Windows a few years later. This started a change in the way people interacted with software.

Before companies started copyrighting software with the intention of getting rich, most software was used by researchers and academics. Computer code was shared openly, and people were free to do whatever they wanted with the programs. Now restrictions were falling in place, and it was becoming illegal to continue doing what used to be done.

A movement formed called the Free Software Movement. In 1983, Richard Stallman announced a plan to create a completely non-proprietary Unix-compatible operating system. He called it the GNU Project, and the announcement is still available on GNU.org.

GNU is a recursive acronym that stands for "GNU's Not Unix." The GNU Project provided many of the cool tools that free desktops depend on today. Critical tools created in the 80s include GCC (a tool for compiling C), the immensely powerful Emacs text editor, Bash, and various command-line utilities still in use.

Many widely used applications are part of the GNU Project, such as GIMP (GNU Image Manipulation Program) and GNOME, one of the most popular free desktop environments. No matter which Linux operating system you use, you probably depend on more than a few bits of GNU software.

The GNU Project is also responsible for the General Public License. This is what has kept most of the free software we use free over the years.

What Is "Linux" in GNU/Linux?

Linux came around in 1991. The project began when a student at the University of Helsinki began working on his own operating system kernel. His name was Linus Torvalds.

At the time, the GNU Project had already created much of what was needed for a functioning free operating system, but the missing pieces were essential. These included hardware drivers, daemons, and a working kernel. These components are what enable software to communicate with the hardware.

GNU Hurd, the GNU Project's attempt at a kernel, began development the year before and was not yet ready. A different kernel called MINIX had been around since 1987, but it was only licensed for educational use.

Frustrated, Torvalds decided to make his own. He referred to the personal project as Linux, a combination of his name and UNIX, but he thought that would be too egotistical to share publicly. Instead, he shared the project as Freax, a combination of "free," "freak," and "UNIX." A coworker didn't like the name and preferred Linux. Linus consented, and the name stuck.

The kernel wasn't free at first, but in 1992 Linus licensed Linux under the GPL, a copyleft license the GNU Project created. This is responsible for much of the project's success. Rather than create competing kernels, many have adopted Linux and contributed to its development.

Are We Using Linux or GNU?

With GNU tools and a functional Linux kernel, we now have a working, free operating system. But what to call it? From the early days, many people referred to operating systems that used the Linux kernel as simply "Linux." This spawned tension because Linux does not represent the bulk of what goes into making the experience we all imagine when we say Linux.

Again, the Linux kernel is the specific bit that gets software and hardware to talk to one another. Everything we actually see on screen? That's something else.

Vanilla OS GNOME desktop

Richard Stallman initially proposed the idea of calling such creations Linux-based GNU systems. He then changed his preference to GNU/Linux (pronounced as "GNU slash Linux" or "GNU plus Linux"), so that it's clear that both projects play an essential role. Some people accept that argument, while others think such a name is awkward and unnecessary. The divide lasts to this day.

Reasons to Say "GNU/Linux"

From the beginning, the GNU Project's purpose was to develop a complete operating system. The kernel was one of the missing pieces of the puzzle. Torvalds did not set out to create an operating system, but to provide that missing piece.

  1. Linux is vital for you to see anything on your screen, but it has very little to do with what you actually see. That's largely determined by your desktop environment.
  2. GNU is also responsible for much of what happens in the background. Even if you don't install a graphical user interface, you're still interacting with command-line tools (such as Bash itself) that are part of GNU.
  3. Without GNU tools, what we think of as Linux doesn't feel like Linux anymore. Android doesn't feel like Linux, even though it uses the Linux kernel. That's largely because it lacks the GNU toolchain.
  4. A screenshot of "Linux" doesn't look any different from a screenshot of a free desktop based on BSD. The various open-source BSD-based operating systems provide a nearly identical experience to desktop Linux, even though the Linux kernel is nowhere in sight.
  5. This isn't how we name other operating systems. When we think of Windows, we typically think of the interface. Few of us immediately think of the Windows kernel. If someone could run the Windows interface and all of their Windows applications on top of the Linux kernel, they would likely still think of that as Windows.
  6. Referring to the entire ecosystem as Linux creates confusion. Torvalds sometimes gets credit for creating the entire operating system, when he only founded a specific part.
  7. GNU is responsible for much of the free desktop's culture and licensing. The GNU Project not only provided the tools that enabled a free operating system, but it also provided the legal framework. The GPL prevents people from taking free code and using it to create their own competing proprietary software. That so many core tools, including Linux itself, were released under a copyleft license accelerated their adoption and laid the foundation for the culture the free software community has today.

Reasons to Say "Linux"

There is a strong case to make that GNU/Linux is a more accurate, more precise name. But is it a good one? Here are some arguments people have made in favor of calling the OS "Linux." The list is shorter yet, perhaps, still stronger.

  1. Linux is already more popular. This was the case back in the 90s, and it remains the case today. To refer to the operating system as anything else would have, and would still, feel like a conscious rebranding effort. That's because Linux is what enabled people to run all the software that the GNU Project and others had created. Without Linux, you had nothing you could actually use.
  2. GNU/Linux is a clumsy name. It's awkward to read, and it's even more clumsy to say. This reason alone is enough to keep some people who agree that Linux isn't a fair name from calling the operating system anything else.
  3. Where do we stop? If we give credit to GNU, do we not give credit to X or Wayland, the display servers that most of the free desktop ecosystem depends on? Audio's important too. So are desktop environments. Before long we're referring to our desktops as GNOME/PipeWire/Wayland/GNU/Linux.

Linus himself has argued that referring to Linux as GNU/Linux is simply ridiculous.

Do You Prefer GNU/Linux or Linux?

I'm no fan of the name GNU/Linux, but there is a certain clarity to saying a laptop runs GNU rather than Linux. With the rise of Android and Chromebooks, the name Linux is increasingly insufficient. A program being available for Linux doesn't mean it will run on Android, and vice versa.

The situation only becomes more convoluted as infotainment systems, smart home products, wearables, and other electronics continue to embrace the Linux kernel.