Richard Stallman and GNU
Abstract
On September 27, 1983, Richard Stallman announced the GNU Project: a complete Unix-compatible operating system, to be given away to anyone who could use it. GNU produced GNU Emacs, GCC, bash, GNU Make and glibc, which are on every Linux system today. Its own kernel, HURD, was never finished, and the combined system took its popular name from the kernel Linus Torvalds released in 1991. To keep distributed software open, Stallman wrote the GNU General Public License (1989), which uses copyright law to require that source code travel with the program, a mechanism he called copyleft. He treats software freedom as a moral question, which set him against the “open source” camp from 1998 onward. His 2019 resignation and 2021 return to the Free Software Foundation’s board split the community again.
The MIT AI Lab and the Xerox Printer
Richard Matthew Stallman was born in Manhattan, New York on March 16, 1953. He was a mathematics prodigy who entered Harvard in the fall of 1970 and began working as a programmer at MIT’s AI Lab in 1971, near the end of his first year, while continuing his studies. He graduated magna cum laude with a bachelor’s degree in physics from Harvard in 1974, then enrolled as a graduate student in physics at MIT, but dropped out of the doctoral program after a year to work full-time at the AI Lab.
The MIT AI Lab of the early 1970s was one of the centers of hacker culture, a community of programmers who freely shared code, modified each other’s work, and regarded proprietary software as an antisocial hoarding of resources. Code in this environment was communal property. Copyright applied to software as it did anywhere else; the sharing was a cultural norm so strong that it was taken for granted.
The norm collapsed around Stallman gradually through the late 1970s and early 1980s as the software industry commercialized. The incident he repeatedly described as the catalyst:
In 1980, Xerox donated a new laser printer, a Xerox 9700, to the AI Lab. The printer was faster than its predecessor but had a frustrating tendency to jam and provide no notification. Stallman wanted to modify the printer’s software to display jam alerts on users’ terminals, a modification he had made to the AI Lab’s previous printer. Xerox had not provided source code.
Stallman tracked down a researcher at Carnegie Mellon who he believed had access to the Xerox printer source code. The man refused to share it: he had signed a non-disclosure agreement.
Stallman described this as a moral injury. The man had placed his contractual obligation to a corporation above his obligation to a fellow programmer and the broader community. He had made a promise that caused harm to others.
GNU and the GPL
On September 27, 1983, Stallman announced the GNU Project (“GNU’s Not Unix”) in a Usenet post to the newsgroups net.unix-wizards and net.usoft, under the subject line “new Unix implementation”: “Starting this Thanksgiving I am going to write a complete Unix-compatible software system called GNU (for Gnu’s Not Unix), and give it away free to everyone who can use it.” “Free” meant free as in freedom: users would have the right to run, study, modify, and redistribute the software. Stallman published the GNU Manifesto in 1985.
To enforce software freedom legally, he invented copyleft, a mechanism that used copyright law against itself. The GPL (GNU General Public License) was copyleft’s implementation: anyone who distributed GPL-licensed software had to make the source code available to recipients, and any modified version they distributed had to carry the same license. Freedom was self-replicating. You could not take GPL software, improve it, and sell the improvements without sharing them.
The GPL came in three major versions:
- GPL v1 (1989): established the copyleft mechanism
- GPL v2 (1991): added the “liberty or death” clause, if patent constraints prevented GPL compliance, distribution was prohibited entirely
- GPL v3 (2007): addressed software patents, digital restrictions management, and the “Tivoization” problem (hardware that ran GPL software but prevented user modifications)
Linus Torvalds chose GPL v2 for Linux and has consistently refused to upgrade to GPL v3, partly over the anti-tivoization provisions. The resulting tension between Stallman’s more absolutist position and Torvalds’ more pragmatic one has been a persistent feature of open-source politics.
GNU Emacs and GCC
The GNU Project’s practical output was substantial:
GNU Emacs (1984), the second version of the Emacs editor Stallman had written at MIT. Emacs was a complete Lisp computing environment in which the editor itself was programmed. Every behavior was customizable. Users wrote substantial applications (mail clients, news readers, calendar systems) inside Emacs. It remained the preferred editor of many Unix programmers decades after its release.
GCC (GNU C Compiler) (1987), a free, high-quality C compiler that was the technical foundation of the GNU ecosystem. Writing GCC was the hardest part of the GNU Project: a compiler required enormous engineering effort and had to produce code competitive with the proprietary Unix compilers it was replacing. GCC was renamed the GNU Compiler Collection as it gained front ends for C++, Objective-C, Fortran, Ada, Go, D, Rust and other languages (about a dozen in all), and became the compiler used by Linux and most of the open-source world.
glibc, bash, GNU Make, GNU Binutils, the complete toolchain without which a Unix-like system could not function. When Torvalds wrote the Linux kernel in 1991, he built it with GCC, linked it against GNU libraries, and ran GNU bash. The “Linux operating system” was substantially GNU tools running on a Linux kernel.
This is why Stallman insists on calling it GNU/Linux, and why most users call it simply Linux, to his perennial frustration.
The Free Software / Open Source Split
In 1998, Netscape released the source code to its Navigator browser under an open-source license. Eric Raymond and Bruce Perens saw an opportunity: if they could present the practical benefits of open-source development to corporations without the ideological baggage of Stallman’s free software framing, they could accelerate adoption.
At a strategy session in Palo Alto on February 3, 1998, Christine Peterson of the Foresight Institute suggested “open source” as an alternative term that emphasized development methodology and practical benefits (better code through more reviewers, no vendor lock-in) rather than Stallman’s moral argument about software freedom. Raymond and Perens founded the Open Source Initiative later that month.
Stallman rejected the reframing then and has never accepted it since. His argument: the practical benefits are real but secondary. The fundamental issue is whether users control their computing or are controlled by their software. “Open source” obscures this by treating software freedom as a development methodology rather than a user right.
Free Software vs. Open Source in Practice
The practical overlap is large: the Free Software Foundation’s “four freedoms” (run, study, modify, distribute) are compatible with the Open Source Initiative’s definition. Most software that qualifies as “open source” also qualifies as “free software.” The difference is philosophical framing and a few licensing edge cases where the two organizations have ruled differently on individual licenses. Licenses that restrict commercial use (Creative Commons NC, Business Source License) fail both definitions. The distinction matters most in political and legal advocacy contexts.
Resignation and Reinstatement
In September 2019, an email from Stallman became public in which he defended aspects of the behavior of Jeffrey Epstein associate Marvin Minsky. The characterization was widely condemned. On September 16, 2019, Stallman resigned from the MIT Computer Science and Artificial Intelligence Laboratory and as president and board member of the Free Software Foundation.
In March 2021, Stallman announced at the LibrePlanet conference that he had rejoined the FSF board. An open letter signed by thousands of developers and by organizations including Mozilla, the GNOME Foundation and the Open Source Initiative called for his removal; a counter-letter supporting him gathered a comparable number of signatures, and Red Hat withdrew its funding from the FSF. The board confirmed his seat in April 2021. The controversy remains unresolved.
Dead End: GNU HURD
The GNU Project’s intended kernel (GNU HURD) was designed to be a microkernel-based system more architecturally sophisticated than Linux. It has been in development since 1990 and has never been declared ready for production use; its last official release was in 2016, and Debian publishes an unofficial Debian GNU/Hurd port. Linux, which was not the kernel Stallman intended, is what runs the world.
The Kernel That Wasn’t
HURD’s design (based on the GNU Mach microkernel) was technically ambitious and practically intractable. Microkernel performance challenges, debugging complexity, and the difficulty of coordinating volunteer contributors on an unglamorous kernel project left it perpetually incomplete. When Linux arrived in 1991, it provided a working kernel for the GNU userspace tools immediately. The pragmatic combination of Linux kernel and GNU tools succeeded; the philosophically pure GNU system was never finished.
The open-source movement’s development and commercial success is covered in The Open Source Revolution and The Open Source Business Model.
📚 Sources
- Stallman, Richard M.: “Initial Announcement” (posted to net.unix-wizards and net.usoft, 27 September 1983) — GNU Project
- Stallman, Richard M.: “The GNU Manifesto” (1985) — GNU Project
- Stallman, Richard M.: Free Software, Free Society: Selected Essays of Richard M. Stallman (3rd ed., 2015), GNU Press
- Williams, Sam: Free as in Freedom: Richard Stallman’s Crusade for Free Software (2002), O’Reilly Media
- GNU Project: “A Brief History of the GNU Project” (1998)
- Open Source Initiative: “History of the OSI”
- Wikipedia: “Richard Stallman”
- Wikipedia: “GNU Compiler Collection”
- Wikipedia: “GNU Hurd”
- Moody, Glyn: Rebel Code: Linux and the Open Source Revolution (2001), Perseus Books
- Image: Richard Stallman Belfort.jpg by Thomas Bresson (CC BY-SA 2.0), via Wikimedia Commons