Subject: bug#9210: Documentation: misleading wording

From: Christophe Jarry <[email-masked]>
Date: Thu, 4 Aug 2011 20:53:15 +0200

> While libtool is a GNU project, I think that this effort by the FSF to 
> independently re-entitle Linux to "GNU/Linux" subsequent to the 
> effective failure of their Hurd OS is foolish

Why is it foolish? During the first years I used GNU/Linux, I believed Linus
Torvalds did write the entire operating system, just because I only knew the
name "Linux" for the entire system! So I think it is fair to say GNU/Linux.

From http://www.gnu.org/gnu/gnu-linux-faq.html#why:

    Many other projects contributed to the system as it is today; it includes
    TeX, X11, Apache, Perl, and many more programs. Don't your arguments imply
    we have to give them credit too? (But that would lead to a name so long it
    is absurd.)

    What we say is that you ought to give the system's principal developer a
    share of the credit. The principal developer is the GNU Project, and the
    system is basically GNU.

    If you feel even more strongly about giving credit where it is due, you
    might feel that some secondary contributors also deserve credit in the
    system's name. If so, far be it from us to argue against it. If you feel
    that X11 deserves credit in the system's name, and you want to call the
    system GNU/X11/Linux, please do. If you feel that Perl simply cries out for
    mention, and you want to write GNU/Linux/Perl, go ahead.

    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.

    Different threshold levels would lead to different choices of name for the
    system. 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).

> and it ignores that most software in a typical "Linux" system is not the
> Linux kernel or FSF/GNU software. 

What is a typical GNU/Linux system?

From http://www.gnu.org/gnu/gnu-linux-faq.html#allsmall:

    GNU is a small fraction of the system nowadays, so why should we mention
    it?

    In 2008, we found that GNU packages made up 15% of the “main” repository of
    the gNewSense GNU/Linux distribution. Linux made up 1.5%. So the same
    argument would apply even more strongly to calling it “Linux”.

    GNU is a small fraction of the system nowadays, and Linux is an even
    smaller fraction. But they are the system's core; the system was made by
    combining them. Thus, the name “GNU/Linux” remains appropriate.

As far as I know, all GNU/Linux distributions use:

- the kernel Linux (or its deblobbed version called Linux-Libre - see
  http://www.fsfla.org/svnwiki/anuncio/2010-03-Linux-2.6.33-libre.en),
- GNU Compiler Collection, GNU Binutils, GLIBC (or EGLIBC, which is heavily
  based on GLIBC) and other build tools (GNU make, automake, autoconf and co).

On that base, the user or developer builds a set of tools to suit her needs.
These tools can come from outside of the GNU project and outside from Linux.

So technically speaking, GNU tools are required to run a GNU/Linux system.

But what distinguishes GNU/Linux from most of the other operating systems? It
gives her user the 4 freedoms of using, modifying, sharing the entire operating
system and sharing modifications of it.

Basically, people that call the operating system "Linux" consider that free
software tools have to be widespread whatever the price, so they often
distribute GNU/Linux with proprietary programs to make it more appealing for
GNU/Linux new comers. But this has the effect to support proprietary software
instead of free software. It makes GNU/Linux become more and more a proprietary
operating system like Windows.

For most of them, the only advantage taken from GNU/Linux is that it is "free
of charge".

> I think that it is better to stick with the names that the developers of the
> Linux kernel and the users prefer to use.

In what way is that better?

> The same logic could be used to create the names GNU/FreeBSD, 
> GNU/NetBSD, GNU/Solaris, GNU/Darwin, etc., because most of these OSs 
> include some GNU components.

From http://www.gnu.org/gnu/gnu-linux-faq.html#bsd:

    Should we say “GNU/BSD” too?

    We don't call the BSD systems (FreeBSD, etc.) “GNU/BSD” systems, because
    that term does not fit the history of the BSD systems.

    The BSD system was developed by UC Berkeley as non-free software in the
    80s, and became free in the early 90s. A free operating system that exists
    today is almost certainly either a variant of the GNU system, or a kind of
    BSD system.

    People sometimes ask whether BSD too is a variant of GNU, as GNU/Linux is.
    It is not. The BSD developers were inspired to make their code free software
    by the example of the GNU Project, and explicit appeals from GNU activists
    helped convince them to start, but the code had little overlap with
    GNU.                                                                         

    BSD systems today use some GNU packages, just as the GNU system and its
    variants use some BSD programs; however, taken as wholes, they are two
    different systems that evolved separately. The BSD developers did not write
    a kernel and add it to the GNU system, so a name like GNU/BSD would not fit
    the situation.

    The connection between GNU/Linux and GNU is much closer, and that's why the
    name “GNU/Linux” is appropriate for it.

    There is a version of GNU which uses the kernel from NetBSD. Its developers
    call it “Debian GNU/NetBSD”, but “GNU/kernelofNetBSD” would  be more
    accurate, since NetBSD is an entire system, not just the kernel. This is not
    a BSD system, since most of the system is the same as the GNU/Linux system.

Christophe