GNU/Linux naming controversy
The GNU/Linux naming controversy is a dispute among members of the free and open source software community over whether to refer to computer operating systems that use a combination of GNU software and the Linux kernel as "GNU/Linux" or "Linux".
GNU/Linux is a term promoted by the Free Software Foundation (FSF) and its founder Richard Stallman.[1] They argue that GNU was a longstanding project begun in 1984 to develop a free operating system, and that when the Linux kernel was independently created in 1991, it merely provided a substantial missing piece.[1]
Proponents of the term Linux argue that it is far more commonly used by the public and media,[2][3] and that it serves as a generic term for systems that combine that kernel with software from multiple other sources.
History
In 1983, Richard Stallman, founder of the Free Software Foundation, set forth plans of a complete Unix-like operating system, called GNU, composed entirely of free software. In September of that year, Stallman published a manifesto in Dr. Dobb's Journal detailing his new project publicly, outlining his vision of free software.[4][5] Software development work began in January 1984. By 1991, the GNU mid-level portions of the operating system were almost complete, and the upper level could be supplied by the X Window System, but the lower level (kernel, device drivers, system-level utilities and daemons) was still mostly lacking. The GNU kernel was called GNU Hurd. The Hurd followed an ambitious design which proved unexpectedly difficult to implement and has only been marginally usable.
Independently, in 1991, Linus Torvalds released the first version of the Linux kernel. Early Linux developers ported GNU code, including the GNU C Compiler, to the kernel. The free software community adopted the use of the Linux kernel as the missing kernel for the GNU operating system. This work filled the remaining gaps in providing a completely free operating system.
Over the next few years, several suggestions arose for naming operating systems using the Linux kernel and GNU components. In 1992, the Yggdrasil Linux distribution adopted the name "Linux/GNU/X". In Usenet and mailing-list discussions, one can find usages of "GNU/Linux" as early as 1992[6] and of "GNU+Linux" as early as 1993.[7] The Debian project, which was at one time sponsored by the Free Software Foundation, switched to calling its product "Debian GNU/Linux" in early 1994;[3][8][9][10] This change followed a request by Richard Stallman (who initially proposed "LiGNUx," but suggested "GNU/Linux" instead after hearing complaints about the awkwardness of the former term).[11] GNU's June 1994 Bulletin describes "Linux" as a "free Unix system for 386 machines" (with "many of the utilities and libraries" from GNU),[12] but the January 1995 Bulletin switched to the term "GNU/Linux" instead.[13]
Stallman's and the FSF's efforts to include "GNU" in the name started around 1994, but were reportedly mostly via private communications (such as the above-mentioned request to Debian) until 1996.[14][15] In May 1996, Stallman released Emacs 19.31 with the Autoconf system target "linux" changed to "lignux" (shortly thereafter changed to "linux-gnu" in emacs 19.32), and included an essay "Linux and the GNU system" suggesting that people use the terms "Linux-based GNU system" (or "GNU/Linux system" or "Lignux" for short). He later used "GNU/Linux" exclusively, and the essay was superseded by Stallman's 1997 essay, "Linux and the GNU project".[1]
Composition of operating systems
Modern free and open source software systems are composed of software by many different authors, including the Linux kernel developers, the GNU project, and other vendors such as those behind the X Window System. Desktop- and server-based distributions use GNU components such as the GNU C Library (glibc), GNU Core Utilities (Coreutils), and bash.
In a 2002 analysis of the source code for Red Hat Linux 7.1, a typical Linux distribution, the total size of the packages from the GNU project was found to be much larger than the Linux kernel.[16] Later, a 2011 analysis of Ubuntu's "Natty" release (a popular Linux distribution) main repository found that 8% to 13% of it consisted of GNU components (the range depending on whether GNOME is considered part of GNU), while 9% is taken by the Linux kernel.[17] Determining exactly what constitutes the "operating system" per se is a matter of continuing debate.
On the other hand, some embedded systems, such as handheld devices and smartphones (like Google's Android), residential gateways (routers), and Voice over IP devices, are engineered with space efficiency in mind and use a Linux kernel with few or no components of GNU. A system running μClinux is likely to substitute uClibc for glibc and BusyBox for Coreutils. Google's Linux-based Android operating system does not use any GNU components or libraries, replacing glibc with Google's own BSD-based Bionic C library. The FSF agrees that "GNU/Linux" is not an appropriate name for these systems.[18][19][20]
There are also systems that use a GNU userspace and/or C library on top of a non-Linux kernel, for example Debian GNU/Hurd (GNU userland on the GNU kernel)[21] or Debian GNU/kFreeBSD (which uses the GNU coreutils and C library with the kernel from FreeBSD).[22]
Opinions supporting "GNU/Linux"
The FSF justifies the name "GNU/Linux" primarily on the grounds that the GNU project was specifically developing a complete system, of which they argue that the Linux kernel filled one of the final gaps;[23] the large number of GNU components and GNU source code used in such systems is a secondary argument:
So if you were going to pick a name for the system based on who wrote the programs in the system, the most appropriate single choice would be GNU. But we don't think that is the right way to consider the question. The GNU Project was not, is not, a project to develop specific software packages. [...] Many people have made major contributions to the free software in the system, and they all deserve credit. But the reason it is an integrated system—and not just a collection of useful programs—is because the GNU Project set out to make it one. We made a list of the programs needed to make a complete free system, and we systematically wrote, or found people to write, everything on the list.— Richard Stallman[23]
In addition, the FSF also argues that "GNU/Linux recognizes the role that our idealism played in building our community, and helps the public recognize the practical importance of these ideals",[18] in contrast to the focus on "technical advantage" rather than "freedom" of the Linux kernel developers.[24][25] In the case of the Linux kernel, notable and recurring examples of this focus on technical advantage over freedom come from the long-time inclusion in the Linux kernel of many non-free firmware files and other files with non-free license terms.[1]
The ordinary understanding of "operating system" includes both the kernel—the specific subsystem that directly interfaces with the hardware—and the "userland" software that is employed by the user and by application software to control the computer. Moreover, both the name "GNU" and the name "Linux" are intentionally related to the name "Unix", and Unix has always conceptually included the C library and userland tools as well as the kernel.[18] In the 1991 release notes for versions 0.01 to 0.11 of the Linux kernel (which was not released under the GNU General Public License until version 0.12[26]), Torvalds wrote, "Sadly, a kernel by itself gets you nowhere [...] Most of the tools used with linux are GNU software."[27] Torvalds also wrote during the 1992 Tanenbaum-Torvalds debate that, "As has been noted (not only by me), the linux kernel is a miniscule part of a complete system".[28][29] Tanenbaum had criticized Torvalds for developing Linux as a monolithic kernel, which he considered obsolete and inferior to microkernels such as Mach.[30] He believed that Linux would be rejected in favor of the GNU HURD microkernel, which had stalled in development for years.[31]
The use of the word "Linux" to refer to the kernel, the operating system, and entire distributions, often leads to confusion about the distinctions among the three. Many GNU packages are a key part of almost every Linux distribution, particularly the GNU toolchain, which is present in all distros (unless Android is included). Media sources sometimes make erroneous statements as well, such as claiming that the entire Linux operating system (rather than simply the kernel) was written by Torvalds in 1991;[32] or that Torvalds directs the development of other components such as graphical interfaces or the GNU tools.
Today tens of millions of users are using an operating system that was developed so they could have freedom—but they don't know this, because they think the system is Linux and that it was developed by a student 'just for fun'.— Richard Stallman[33]
Because of this confusion, legal threats and public relations campaigns apparently directed against the kernel, such as those launched by the SCO Group or the Alexis de Tocqueville Institution (AdTI), have been misinterpreted by many commentators who assume that the whole operating system is being targeted. SCO and the AdTI have even been accused of deliberately exploiting this confusion.[34][35][36]
Regarding suggestions that renaming efforts stem from egotism or personal pique, Stallman has responded that his interest is not in giving credit to himself but to the GNU Project: "Some people think that it's because I want my ego to be fed. Of course, I'm not asking you to call it 'Stallmanix'."[37] Stallman has admitted to irritation, although he believes it to be justified in response to seeing "an idealistic project stymied and made ineffective, because people don't usually give it the credit for what it has done," concluding "If you're an idealist like me, that can ruin your whole decade."[38]
In response to another common argument (see below), the FSF acknowledges that many people have contributed to the system and that a short name cannot credit all of them, but argues that this cannot justify calling the system "Linux":
Since a long name such as GNU/X11/Apache/Linux/TeX/Perl/Python/FreeCiv becomes absurd, at some point you will have to set a threshold and omit the names of the many other secondary contributions. There is no one obvious right place to set the threshold, so wherever you set it, we won't argue against it ... But one name that cannot result from concerns of fairness and giving credit, not for any possible threshold level, is "Linux". It can't be fair to give all the credit to one secondary contribution (Linux) while omitting the principal contribution (GNU).— GNU/Linux FAQ by Richard Stallman[18]
In continuing to speak on the subject, in 2010, Stallman stated that naming is not simply a matter of giving equal mention to the GNU Project. Because the system is more widely referred as "Linux" people tend to "think it's all Linux, that it was all started by Mr. Torvalds in 1991, and they think it all comes from his vision of life, and that's the really bad problem".[39]
Supporters of the use of "GNU/Linux" point out that GNU is a core part of every (traditional) Linux distribution (not including embedded systems such as Android which do not contain X/Apache/etc. either), minimal installs consist of the Linux kernel, the GNU toolchain, and a few essential commands.[40]
Opinions supporting "Linux"
"Linux" is by far the more widespread name.[2][3]
Eric S. Raymond writes (in the "Linux" entry of the Jargon File):
Some people object that the name "Linux" should be used to refer only to the kernel, not the entire operating system. This claim is a proxy for an underlying territorial dispute; people who insist on the term GNU/Linux want the FSF to get most of the credit for Linux because [Stallman] and friends wrote many of its user-level tools. Neither this theory nor the term GNU/Linux has gained more than minority acceptance.
When Linus Torvalds was asked in the documentary Revolution OS whether the name "GNU/Linux" was justified, he replied:
Well, I think it's justified, but it's justified if you actually make a GNU distribution of Linux ... the same way that I think that "Red Hat Linux" is fine, or "SuSE Linux" or "Debian Linux", because if you actually make your own distribution of Linux, you get to name the thing, but calling Linux in general "GNU Linux" I think is just ridiculous.[41][42]
An earlier comment by Torvalds on the naming controversy was:
Umm, this discussion has gone on quite long enough, thank you very much. It doesn't really matter what people call Linux, as long as credit is given where credit is due (on both sides). Personally, I'll very much continue to call it "Linux", ...The GNU people tried calling it GNU/Linux, and that's ok. It's certainly no worse a name than "Linux Pro" or "Red Hat Linux" or "Slackware Linux" ...
Lignux is just a punny name—I think Linux/GNU or GNU/Linux is a bit more "professional" ...[43]
The Linux Journal speculated that Stallman's advocacy of the combined name stems from frustration that "Linus got the glory for what [Stallman] wanted to do."[44]
Others have suggested that, regardless of the merits, Stallman's persistence in what sometimes seems a lost cause makes him and GNU look bad. For example, Larry McVoy (author of BitKeeper, once used to manage Linux kernel development) opined that "claiming credit only makes one look foolish and greedy".[45]
Many users and vendors who prefer the name "Linux" point to the inclusion of non-GNU, non-kernel tools such as the Apache HTTP Server, the X Window System, or the KDE workspace in end-user operating systems based on the Linux kernel. As stated by Jim Gettys, originator of X:
There are lots of people on this bus; I don't hear a clamor of support that GNU is more essential than many of the other components; can't take a wheel away, and end up with a functional vehicle, or an engine, or the seats. I recommend you be happy we have a bus.[46]
Pronunciation
Although "GNU/Linux" /ɡəˈnuː slæʃ ˈlɪnəks/ is often pronounced without the slash, Stallman recommends explicitly saying the word "slash" or "plus" in order to avoid the mistaken suggestion that the Linux kernel itself is a GNU package,[47] as is the case with GNU Linux-libre.
See also
References
- 1 2 3 4 "GNU project website". Gnu.org. Retrieved 22 June 2011.
- 1 2 Kurp, Abraham (July 2008). "Learning The Linux Lingo". MakeUseOf. Archived from the original on 8 March 2009. Retrieved 10 April 2011.
- 1 2 3 Siever, Ellen (June 2005). "What Is Linux". Linux Dev Center. O'Reilly. Retrieved 10 April 2011.
- ↑ Kirk St.Amant & Brian Still. Handbook of Research on Open Source Software: Technological, Economic, and Social Perspectives. ISBN 1591409993.
- ↑ Marshall, Rosalie (17 November 2008). "Q&A: Richard Stallman, founder of the GNU Project and the Free Software Foundation". PC & Tech Authority. Retrieved 2 January 2014.
- ↑ Jamie Mazer (26 November 1992). "Re: ANNOUNCEMENT: Alpha release Linux/GNU/X ...". Newsgroup: comp.unix.misc. Retrieved 3 February 2008.
- ↑ Rodrigo Vanegas (18 May 1993). "The free software myth and the commercial myth". Newsgroup: comp.os.linux. Retrieved 3 February 2008.
- ↑ Stephen Benson (12 May 1994). "Linux/GNU in EE Times". Newsgroup: comp.os.linux.misc. Usenet: 178@scribendum.win-uk.net. Retrieved 31 January 2008.
- ↑ Official announcement of the name change on the debian-announce mailing list
- ↑ Moody, Glyn (2002). Rebel Code: Linux And The Open Source Revolution. Basic Books. ISBN 978-0738206707.
- ↑ "Sam Williams, ''Free as in Freedom: Richard Stallman's Crusade for Free Software'', chapter 10 (O'Reilly, 2002)". Oreilly.com. 6 January 1994. Retrieved 22 June 2011.
- ↑ "GNU's Bulletin, vol. 1 no. 17".
- ↑ "GNU's Bulletin, vol. 1 no. 18".
- ↑ Richard Stallman (12 January 2003). "Re: Why is Nvidia given GPL'd code to use in closed source drivers?". linux-kernel (Mailing list). Lkml.org. Retrieved 22 June 2011.
- ↑ Matt Welsh (8 September 1994). "Linux is a GNU system and the DWARF support". Newsgroup: comp.os.linux.misc. Retrieved 3 February 2008.
RMS's idea (which I have heard first-hand) is that Linux systems should be considered GNU systems with Linux as the kernel.
- ↑ David A. Wheeler (29 July 2002). "More Than a Gigabuck: Estimating GNU/Linux's Size".
the total of the GNU project's code is much larger than the Linux kernel's size. Thus, by comparing the total contributed effort, it's certainly justifiable to call the entire system GNU/Linux and not just Linux.
- ↑ Côrte-Real, Pedro (31 May 2011). "How much GNU is there in GNU/Linux?". Split Perspective. (self-published data)
- 1 2 3 4 "GNU/Linux FAQ by Richard Stallman".
- ↑ Bradley M. Kuhn, Android/Linux's Future and Advancement of Mobile Software Freedom, blog post (4 November 2009).
- ↑ Paul, Ryan (23 February 2009). "Dream(sheep++): A developer's introduction to Google Android". Arstechnica.com. Retrieved 22 June 2011.
- ↑ Debian GNU/Hurd web page, and GNU Hurd web page. (Accessed June 2013.)
- ↑ Debian GNU/kFreeBSD web page (accessed June 2013).
- 1 2 "Richard Stallman, "Linux and the GNU Project"". GNU Project. Retrieved 22 June 2011.
- ↑ Richard Stallman, Linux, GNU, and freedom (2002): "Calling this variant of the GNU system "Linux" plays into the hands of people who choose their software based only on technical advantage, not caring whether it respects their freedom."
- ↑ Linus Torvalds, linux-kernel mailing list: "Besides, as the whole notion of 'free software' has very little to do with the kernel, please just link to some open source site" (28 April 2002)
- ↑ Linus Torvalds, "Release Notes for Linux v0.12" (January 1992)
- ↑ Linus Torvalds, "Notes for linux release 0.01" (September 1991)
- ↑ Linus Torvalds (31 January 1992). "LINUX is obsolete". Newsgroup: comp.os.minix.
- ↑ Appendix A Open Sources: Voices from the Open Source Revolution, O'Reilly, 2000.
- ↑ Tanenbaum had developed his own microkernel for educational purposes, Minux, and it greatly influenced the development of Linux.
- ↑ Torvalds has said that if the HURD were released at that time he would not have developed Linux
- ↑ "Linux is an operating system that was initially created as a hobby by a young student, Linus Torvalds, at the University of Helsinki in Finland." Linux.org, (15 October 2008); reprinted in Bill Holtsnider and Brian D. Jaffe, IT Manager's Handbook, 2nd ed., p. 395 (Morgan Kaufmann, 2010).
- ↑ "Free Software as a Social Movement". ZNet. 18 December 2005. Archived from the original on 23 October 2012. Retrieved 19 October 2012.
- ↑ Mike Angelo (28 April 2003). "SCO-Caldera v IBM".
Generally, SCO's Caldera v IBM Complaint is vague and confusing as to whether the accusations involve the Linux kernel, the GNU/Linux operating system, Linux distributions, Linux applications, or whatever.
- ↑ Eben Moglen (27 June 2003). "FSF Statement on SCO v IBM]".
SCO has used "Linux" to mean "all free software", or "all free software constituting a UNIX-like operating system." This confusion, which the Free Software Foundation warned against in the past, is here shown to have the misleading consequences the Foundation has often predicted
- ↑ Lisa Stapleton (27 May 2004). "Stallman: Accusatory Report Deliberately Confuses". LinuxInsider.
In particular, Stallman criticized the [Ken Brown/AdTI] report for capitalizing on common confusion between the Linux kernel, which Stallman says "Linus really wrote", with the full GNU operating system and associated software, which can be and generally is used with the Linux kernel.
- ↑ "Transcript of Richard M. Stallman's speech, "Free Software: Freedom and Cooperation", given at New York University in New York, NY, on 29 May 2001".
- ↑ Richard Stallman (3 April 1999). "Re: GNU/Linux". linux-kernel (Mailing list).
- ↑ "Richard Stallman talk+Q&A at the useR! 2010 conference (audio files attached)". R-statistics blog. 26 July 2010.
- ↑ "GNU Project". ArchWiki.
- ↑ Moore, J.T.S. (Produced, Written, and Directed) (2001). Revolution OS (DVD).
- ↑ "Linus Torvalds, Linux, GNU/Linux".
- ↑ Linus Torvalds (3 June 1996). "Lignux, what's the matter with you people?". Newsgroup: comp.os.linux.misc.
- ↑ "From the Publisher: On the Politics of Freedom". Linux Journal No. 30 (October 1996).
Perhaps RMS is frustrated because Linus got the glory for what RMS wanted to do.
- ↑ Larry McVoy (3 April 1999). "Re: GNU/Linux". linux-kernel (Mailing list).
- ↑ Jim Gettys (5 April 1999). "Re: GNU/Linux". linux-kernel (Mailing list).
- ↑ Jeremy Andrews, Interview: Richard Stallman, KernelTrap.org (2 January. 2005)
External links
- "Why GNU/Linux?" (or "What's in a name?"), by Richard Stallman
- GNU Users Who Have Never Heard of GNU, also by Richard Stallman
- GNU/Linux FAQ by Richard Stallman
- The "Say Lignux" Campaign, by Richard Stallman, 2013
- David A. Wheeler on why he mostly says "GNU/Linux"
- Stallman explaining the relationship of GNU and Linux, Zagreb, 2006
- Who wrote Linux?, by Josh Mehlman, ZDNet Australia, 7 July 2004