GNU/Linux naming controversy

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by SmackBot (talk | contribs) at 11:33, 29 August 2010 (Date maintenance tags and general fixes: build 490:). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

The GNU/Linux naming controversy is a dispute among members of the free and open source software community over how to refer to the computer operating system commonly called Linux.

GNU/Linux is a term promoted by the Free Software Foundation (FSF), its founder Richard Stallman, and its supporters, for operating systems that include GNU software and the Linux kernel.[1] The FSF argues for the term GNU/Linux because GNU was a longstanding project to develop a free operating system, of which they say the kernel was the last missing piece.[1] Proponents of the Linux term dispute GNU/Linux for a number of reasons, such as the fact that the term Linux is far more commonly used by the public and media.

History

Plans for the GNU operating system were made in 1983 by Richard Stallman, founder of the Free Software Foundation. In September of that year, Stallman published a manifesto in Dr. Dobb's Journal detailing his new project publicly, and outlining his vision of free software. Software development work began in January 1984. GNU was to be a complete Unix-like operating system composed entirely of free software. 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, GNU Hurd, was still in its infancy. The Hurd followed an ambitious design which proved unexpectedly difficult to implement and has only been marginally usable.

In 1991, the first version of the Linux kernel was released by Linus Torvalds. Early Linux kernel developers ported GNU code, including the GNU C Compiler, to run on Linux. Later, when the GNU developers learned of Linux, they adapted other parts of GNU to run on the Linux kernel. This work filled the remaining gaps in running a completely free operating system.

Over the next few years, there were a number of suggestions for how to name 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[2] and of "GNU+Linux" as early as 1993.[3] The Debian project switched to calling itself "GNU/Linux" in early 1994;[4] Debian founder Ian Murdock later noted that this change was made in response to a request by Richard Stallman (who initially proposed "Lignux," but suggested "GNU/Linux" instead after hearing complaints about the awkwardness of the former term).[5] GNU's June 1994 Bulletin describes "Linux" as a "free Unix system for 386 machines" (with "many of the utilities and libraries" from GNU),[6] but the January 1995 Bulletin switched to the term "GNU/Linux" instead.[7] 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 abovementioned request to Debian) until 1996.[8][9] 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 Linux-based 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 an analysis of the source code for packages comprising 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.[10] 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. Even the FSF agrees that "GNU/Linux" is not an appropriate name for these systems.[11][12][13]

Opinions supporting "GNU/Linux"

FSF artwork of the gnu (GNU mascot) and the penguin Tux (Linux kernel mascot) representing their viewpoint on "GNU/Linux". The GNU General Public License (GPL), which is used by the Linux kernel as well as by most GNU software, armors both characters.

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 the kernel Linux filled one of the final gaps;[14] 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.[14]

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",[11] in contrast to the focus on "technical advantage" rather than "freedom" of the Linux kernel developers.[15][16] 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. 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[17]), Torvalds wrote, "Sadly, a kernel by itself gets you nowhere [...] Most of the tools used with linux are GNU software."[18] 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".[19]

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. Media sources frequently make erroneous statements such as claiming that the entire Linux operating system (rather than simply the kernel) was written from scratch by Torvalds in 1991;[20] that Torvalds directs the development of other components such as graphical interfaces or the GNU tools; or that new releases of the kernel involve a similar degree of user-visible change as do new versions of proprietary operating systems such as Microsoft Windows, where many things besides the kernel change simultaneously.

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. These organisations have even been accused of deliberately exploiting this confusion.[21][22][23]

In response to suggestions that Stallman's 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'."[24] 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."[25]

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).[11]

Opinions supporting "Linux"

"Linux" is by far the more widespread name,[26] while references to "GNU/Linux" appear only infrequently in mainstream sources. "Linux" has more historical momentum because it is the name Torvalds has used for the combined system since 1991, while Stallman only began asking people to call the system "GNU/Linux" in the mid 1990s, some time after the "Linux" name had already become popular. "Linux" also is shorter and easier to say than "GNU/Linux".

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.

Linus Torvalds has said in the documentary Revolution OS, when asked if the name GNU/Linux was justified:

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.[27]

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".[28]

In a similar vein, the debate over the name for the operating system is sometimes characterized as a trivial distraction; e.g. John C. Dvorak wrote "the Linux community spends too much of its energy on things such as nomenclature (like the name GNU/Linux versus Linux)."[29]

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."[30]

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 the proprietary software BitKeeper, once used to manage Linux kernel development, until the gratis license was revoked in a reverse-engineering controversy) opined that "claiming credit only makes one look foolish and greedy".[31]

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.[32]

Pronunciation

Although "GNU/Linux" (Template:Pron-en) is often pronounced without the slash, Stallman recommends explicitly saying the word "slash" in order to avoid the mistaken suggestion that the Linux kernel itself is a GNU package.[33]

See also

References

  1. ^ a b c d GNU project website
  2. ^ Jamie Mazer (26 November 1992). "Re: ANNOUNCEMENT: Alpha release Linux/GNU/X ..." Newsgroupcomp.unix.misc. Retrieved 3 February 2008.
  3. ^ Rodrigo Vanegas (18 May 1993). "Re: http://groups.google.com/group/comp.os.linux/msg/dcf89e95ca953b69". Newsgroupcomp.os.linux. Retrieved 3 February 2008. {{cite newsgroup}}: External link in |title= (help)
  4. ^ Stephen Benson (12 May 1994). "Linux/GNU in EE Times". Newsgroupcomp.os.linux.misc. 178@scribendum.win-uk.net. Retrieved 31 January 2008.
  5. ^ Sam Williams, Free as in Freedom: Richard Stallman's Crusade for Free Software, chapter 10 (O'Reilly, 2002).
  6. ^ "GNU's Bulletin, vol. 1 no. 17".
  7. ^ "GNU's Bulletin, vol. 1 no. 18".
  8. ^ Richard Stallman, "Re: Why is Nvidia given GPL'd code to use in closed source drivers?," linux-kernel mailing list (12 January 2003).
  9. ^ Matt Welsh (8 September 1994). "Linux is a GNU system and the DWARF support". Newsgroupcomp.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."
  10. ^ 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.
  11. ^ a b c GNU/Linux FAQ, the Free Software Foundation's responses to common objections to the "GNU/Linux" name.
  12. ^ http://www.softwarefreedom.org/blog/2009/nov/04/android-vs-gnu/
  13. ^ http://arstechnica.com/open-source/reviews/2009/02/an-introduction-to-google-android-for-developers.ars
  14. ^ a b Richard Stallman, "Linux and the GNU Project"
  15. ^ 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."
  16. ^ 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).
  17. ^ Linus Torvalds, "Release Notes for Linux v0.12" (January 1992).
  18. ^ Linus Torvalds, "Notes for linux release 0.01" (September 1991).
  19. ^ Linus Torvalds, comp.os.minix post (31 January 1992).
  20. ^ "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)
  21. ^ 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.
  22. ^ 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
  23. ^ 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.
  24. ^ Richard Stallman, "Free Software: Freedom and Cooperation", transcript of speech at New York University in New York, New York (29 May 2001).
  25. ^ Richard Stallman, "Re: GNU/Linux", linux-kernel mailing list (3 April 1999).
  26. ^ Govind, Puru (2006). "The "GNU/Linux" and "Linux" Controversy". Retrieved 26 October 2008. {{cite web}}: Unknown parameter |month= ignored (help)
  27. ^ Moore, J.T.S. (Produced, Written, and Directed) (2001). Revolution OS (DVD).
  28. ^ Linus Torvalds, "Lignux, what's the matter with you people?", comp.os.linux.misc newsgroup (3 June 1996).
  29. ^ John C. Dvorak, "Is Linux Your next OS?", PC Magazine (5 March 2002).
  30. ^ "From the Publisher: On the Politics of Freedom". Linux Journal #30 (October 1996). Perhaps RMS is frustrated because Linus got the glory for what RMS wanted to do
  31. ^ Larry McVoy, "Re: GNU/Linux", linux-kernel mailing list (3 April 1999).
  32. ^ Jim Gettys, Re: GNU/Linux, linux-kernel mailing list (5 April 1999).
  33. ^ Jeremy Andrews, Interview: Richard Stallman, KernelTrap.org (2 January. 2005).

External links