← Back to articles
News· 5 min read

What Is GNU and Why People Say GNU/Linux

Concept of free and open source software on a computer screen
Foto: Digital Buggu · Pexels

You boot your computer, the Ubuntu or Debian desktop loads, and you figure you’re running “Linux.” That’s what everyone calls it. But an old, stubborn, oddly affectionate argument resurfaces every time someone dares to call the whole system Linux: technically, you should be saying GNU/Linux. Behind that little slash sits a story nearly half a century long.

The Dream of a Free System

Portrait of Richard Stallman, founder of the GNU project and the Free Software Foundation
Richard Stallman, who announced the GNU project in 1983 and founded the Free Software Foundation. · Imagen: Indranilhere at English Wikipedia / Public domain · Wikimedia Commons

In September 1983, an MIT programmer named Richard Stallman announced on Usenet that he was going to build a complete, free, UNIX-compatible operating system. He named it GNU, a recursive acronym standing for “GNU’s Not Unix.” Actual development kicked off in January 1984.

Stallman was fed up with a world where software shipped as a closed black box, with no access to the source code, and where simply sharing a program with a friend could be treated as a crime. He wanted the opposite: a system anyone could use, study, modify, and share. In March 1985 he published the GNU Manifesto in Dr. Dobb’s Journal, and that same year, on October 4, 1985, he founded the Free Software Foundation (FSF) to keep the effort alive.

The Four Freedoms of Free Software

The philosophical core of all this rests on the so-called four freedoms. For a program to count as “free software,” it must guarantee its users:

  • Freedom 0: to run the program as you wish, for any purpose.
  • Freedom 1: to study how it works and adapt it to your needs (which requires access to the source code).
  • Freedom 2: to redistribute copies so you can help others.
  • Freedom 3: to distribute modified versions, so the whole community benefits from your improvements.

Notice the numbering starts at zero. That’s not just programmer quirkiness: the freedom to run the program was added later and deemed so fundamental that it landed ahead of the others, which were already numbered one through three.

To protect these freedoms, Stallman came up with a brilliant legal mechanism: copyleft, embodied in the GPL (GNU General Public License). The idea is simple and cunning. It uses copyright itself to keep the software free. If you modify and redistribute a GPL-licensed program, your changes must stay equally free. Nobody can “close” what was once open.

GNU Built Almost Everything… Except One Piece

Here’s the part many people don’t know. Throughout the 1980s, the GNU project assembled, piece by piece, the components of a complete operating system. And these weren’t minor parts. We’re talking about tools that, to this day, remain the beating heart of any UNIX-like system.

The GCC compiler, used to build a huge portion of the world’s software. The GNU Core Utilities (coreutils), those commands like ls, cp, or cat you use without thinking. The Bash shell, the Emacs editor, the glibc C library, the GDB debugger… an enormous body of work that amounted to nearly an entire operating system.

Nearly. The central piece was missing: the kernel, the core that talks directly to the hardware and coordinates everything else. GNU did have its own kernel underway, GNU Hurd, in development since 1990. But Hurd turned out fiendishly complex, built on a microkernel design that caused problems for years. It never became ready for everyday use. By 1992 the rest of the GNU system was sitting there, waiting for a heart that wouldn’t quite start beating.

And Then Linux Arrived

Tux, the penguin mascot of the Linux kernel created by Linus Torvalds
Tux, the Linux mascot: the kernel that completed the GNU system in 1992. · Imagen: Larry Ewing, Simon Budig, Garrett LeSage / CC0 · Wikimedia Commons

In 1991, a 21-year-old Finnish student named Linus Torvalds started writing, almost as a hobby, a kernel for his personal computer. He called it Linux. In 1992 he released it under the GPL, the very license the FSF had created.

The combination fit like a glove. On one side, an entire GNU system missing only a kernel. On the other, a kernel that worked but lacked everything around it. Put them together and you got the first operating system composed entirely of free software. The earliest distributions (such as those that would lead to Debian or Slackware) were nothing more than GNU + Linux, packaged and ready to install.

So, Linux or GNU/Linux?

Here’s the crux of the debate. Stallman and the FSF argue that calling the whole system “Linux” is unfair: Linux is just the kernel, an indispensable component but a single component all the same. The bulk of the system (compiler, utilities, shell) is GNU. That’s why they ask for the name GNU/Linux, to credit both efforts.

On the other side, plenty of people point out that “Linux” stuck out of habit, that it’s shorter, and that what runs today includes vast amounts of software that is neither GNU nor the kernel. Distributions like Alpine Linux don’t even use GNU’s coreutils or glibc, yet they’re still called Linux.

There’s no definitive “correct” answer: it’s part technical, part political. But knowing the history changes how you look at your desktop. Next time you open a terminal on Fedora or Arch and type a command, remember you’re typing on four decades of work from two distinct communities that, almost without meaning to, ended up building together the free software that powers much of the planet today.