I believe the bit you're referring to is covered here on the Free Software Foundation (FSF) website:
According to the FSF their contention is that Linux is just a Kernel. A usable system is comprised of a Kernel + the tools such as ls
, find
, shells, etc. Therefore when referring to the entire system, it should be referred to as GNU/Linux, since the other tools together with the Linux Kernel make up a complete usable system. They even go on to talk about the FSF Unix Kernel, Hurd, making arguments that Hurd and Linux are essentially interchangeable Kernels to the GNU/X system.
I find the entire argument tiring and think there are better things to do with our time. A name is just a name and the fact that people consider a system that includes GNU software + the Linux Kernel + other non-GNU software to be Linux or GNU/Linux a matter of taste and really doesn't matter in the grand scheme of things. In fact I think the argument does more to hurt Linux and GNU/Linux by fracturing the community and confusing the general public as to what each thing actually is.
For more than you ever wanted to know on this topic take a look at the Wikipedia articled titled: GNU/Linux naming controversy.
All Unixes opensource?
To my knowledge not all Unixes are opensource. Most of the functionality within Unix is specified so that how things work is open, but specific implementations of this functionality is or isn't open depending on which distro it's a part of.
For example, until recently Solaris, a Unix, wasn't considered open source. Only when Sun Microsystem's released core components into the OpenSolaris project, did it at least components of Solaris become open source.
Unix History
I'm by no means an expert on this topic, so I would suggest taking a look at the Unix Wikipedia page for more on the topic.
Linux History
Take a look at the Unix Lineage diagram for more on which Unixes are considered open, mixed, or closed source.
I also find the GNU/Linux Distribution Timeline Project useful when having this conversation.
The explicit goal of the GNU project is to provide a complete open source/libre/free operating system.
Are there any GNU distributions which use only these packages -- i.e. a "pure" GNU operating system that runs on only GNU packages?
There is a reference here to an official sounding GNU binary distro based on Hurd which "consists of GNU Mach, the Hurd, the C library and many applications". It may or may not be currently maintained, however, as I couldn't find any other online references to it. But it does sound like it fits your criteria.
I'm not particularly interested on whether this would be a practical operating system, just if it's theoretically possible to run GNU Hurd with purely the GNU packages.
The answer to the previous question implies an obvious answer WRT Hurd. Of course, it might help to define more precisely what would count as a reasonably complete "operating system". I'll provide two definitions:
A collection of software sufficient to boot up to a shell prompt.
A system which fulfills POSIX criteria. This is essentially a stricter version of #1, since the highest level mandatory entity in a POSIX system would be the shell.
This is a little arbitrary, since an operating system designed to fulfill some special purpose might not need a shell at all. However, in that case it would become a more specific question about the nature of the "special purpose".
In any case, the answer is yes, although GNU's implementation of some things may not be 100% perfectly POSIX compliant (and there are a handful of required utilities, such as crontab
, which GNU doesn't provide). Here are the potential components:
- Kernel (Hurd)
- C library (glibc)
- Essential utilities (GNU core-utils, etc.)
- Shell (bash, which is a GNU project)
I did not include a bootloader, since that is not part of the OS -- but in any case grub
is also a GNU project.
Best Answer
The most important parts are the GCC compiler, glibc C library, the coreutils and binutils basic Unix tools, and probably the bash shell and the Gnome desktop environment (if you use those).
Just source line count doesn't take the relative importance into account. If you take e.g. Debian's or Fedora's full software selection, most people don't even install more than a fraction of it. And (unless you are extremely organized), chances are that they have lots of packages installed because they got intrigued, installed it to check it out, and forgot all about it. So not even statistics on packages downloaded (like I believe Debian maintains) is a fair depiction.
Added later: I just came across this page by O'Reilly (with an included poster showing contributions to a Linux system).