GNU/Linux naming controversy

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

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;[8][9][3][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 abovementioned 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),[citation needed] and included an essay "Linux and the GNU system"[citation needed] 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"

FSF artwork of the gnu (GNU mascot) and the penguin Tux (mascot of the Linux kernel) 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 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:

<templatestyles src="Template:Blockquote/styles.css" />

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]

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 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;[30] or that Torvalds directs the development of other components such as graphical interfaces or the GNU tools.[citation needed]

<templatestyles src="Template:Blockquote/styles.css" />

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[31]

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

To 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'."[35] 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."[36]

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":

<templatestyles src="Template:Blockquote/styles.css" />

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

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):

<templatestyles src="Template:Blockquote/styles.css" />

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:

<templatestyles src="Template:Blockquote/styles.css" />

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.[38][39]

An earlier comment by Torvalds on the naming controversy was:

<templatestyles src="Template:Blockquote/styles.css" />

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

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

Others[specify] 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) opined that "claiming credit only makes one look foolish and greedy".[42]

Many users and vendors who prefer the name "Linux"[specify] 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:

<templatestyles src="Template:Blockquote/styles.css" />

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

Pronunciation

Although "GNU/Linux" /ɡəˈn 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,[44] as is the case with GNU Linux-libre.

See also

References

  1. 1.0 1.1 1.2 1.3 Lua error in package.lua at line 80: module 'strict' not found.
  2. 2.0 2.1 Lua error in package.lua at line 80: module 'strict' not found.
  3. 3.0 3.1 3.2 Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Official announcement of the name change on the debian-announce mailing list
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found. (self-published data)
  18. 18.0 18.1 18.2 18.3 GNU/Linux FAQ
  19. Bradley M. Kuhn, Android/Linux's Future and Advancement of Mobile Software Freedom, blog post (4 November 2009).
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Debian GNU/Hurd web page, and GNU Hurd web page. (Accessed June 2013.)
  22. Debian GNU/kFreeBSD web page (accessed June 2013).
  23. 23.0 23.1 Lua error in package.lua at line 80: module 'strict' not found.
  24. 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."
  25. 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)
  26. Linus Torvalds, "Release Notes for Linux v0.12" (January 1992)
  27. Linus Torvalds, "Notes for linux release 0.01" (September 1991)
  28. Linus Torvalds, comp.os.minix post (31 January 1992)
  29. Appendix A Open Sources: Voices from the Open Source Revolution, O'Reilly, 2000.
  30. "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).
  31. Lua error in package.lua at line 80: module 'strict' not found.
  32. Lua error in package.lua at line 80: module 'strict' not found.
  33. Lua error in package.lua at line 80: module 'strict' not found.
  34. Lua error in package.lua at line 80: module 'strict' not found.
  35. Richard Stallman, "Free Software: Freedom and Cooperation", transcript of speech at New York University in New York City (29 May 2001)
  36. Richard Stallman, "Re: GNU/Linux", linux-kernel mailing list (3 April 1999)
  37. Richard Stallman talk+Q&A at the useR! 2010 conference
  38. Lua error in package.lua at line 80: module 'strict' not found.
  39. Lua error in package.lua at line 80: module 'strict' not found.
  40. Linus Torvalds, "Lignux, what's the matter with you people?", comp.os.linux.misc newsgroup (3 June 1996)
  41. Lua error in package.lua at line 80: module 'strict' not found.
  42. Larry McVoy, "Re: GNU/Linux", linux-kernel mailing list (3 April 1999)
  43. Jim Gettys, Re: GNU/Linux, linux-kernel mailing list (5 April 1999)
  44. Jeremy Andrews, Interview: Richard Stallman, KernelTrap.org (2 January. 2005)

External links