LWN.net Logo

How much GNU is there in GNU/Linux?

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 4:39 UTC (Wed) by mikankun (guest, #74785)
Parent article: How much GNU is there in GNU/Linux?

Remove the GNU C library and then report how much of that software runs.


(Log in to post comments)

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 4:53 UTC (Wed) by flewellyn (subscriber, #5047) [Link]

Well, certainly true.

It's not the amount of the code contributed to GNU/Linux by GNU that is really the point. It's the centrality of that code in making a working system. Sure, if not for GNU, others could have created a free userland, and others in the BSD world did. But the GNU system is what Linux uses for a userland in most common configurations, so...

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 8:23 UTC (Wed) by mingo (subscriber, #31122) [Link]

Remove the BIOS and see whether your system will boot at all.

Remove the CPU microcode and see whether your BIOS will run at all.

Do we get to call it Intel/BIOS/GNU/Linux now?

I think the GNU/ prefix, based on just 8% code contribution, has become largely moot by today. If people want to say "Linux/GNU" then they can do that, but trying to *insist* on the "GNU/Linux" naming based on the rather strained argument that's still all super-important GNU code and the rest is just details is somewhat pathetic.

If the GNU projects wants to gain larger relevance it should contribute more *code* and should be a friendly platform for contributors, instead of aggressively trying to language-lawyer themselves into the naming of other projects ...

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 9:27 UTC (Wed) by realnc (guest, #60393) [Link]

Same goes for the kernel. Based on just 8% code contribution, "Linux" has become largely moot by today. ;-)

Different people have a different biases.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 10:20 UTC (Wed) by mingo (subscriber, #31122) [Link]

Of course that's true - with the rather crutial difference that we do not insist on calling it "Linux"! :-)

I never ever corrected anyone to say "Linux/Ubuntu" instead of just "Ubuntu", or to say "Linux/Android" instead of just "Android".

This whole GNU/Linux naming crusade is just that: a crusade, trying to force things on others. You need to stop 'correcting' people when they say Android, Ubuntu or Linux, that they should say "GNU/".

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 22:43 UTC (Wed) by jmalcolm (guest, #8876) [Link]

You nailed it.

How much GNU is there in GNU/Linux?

Posted Jun 2, 2011 1:05 UTC (Thu) by chad.netzer (✭ supporter ✭, #4257) [Link]

Linux is just a cool name. I'd say roughly 40% of Linux's early success at attracting interested people was based on name alone. :)

How much GNU is there in GNU/Linux?

Posted Jun 2, 2011 6:36 UTC (Thu) by mingo (subscriber, #31122) [Link]

For a long time i shared your exact sentiment (i'd even place the 'pure luck' and 'good naming' proportion much higher than 40%), but then i had to admit that the phenomenal success of the "Git" project is somewhat of an outlier! :-)

So a proper, scalable development model (and, of course, good timing) matters a lot and can offset a bad name.

But yeah, i definitely agree that the "Freux" or "Freax" name would probably have been somewhat of an embarrassment with time, especially for desktop and business users.

(Just like dropping the cool minerals naming scheme (Beryl, Emerald, etc.) and going back to the dry and uninspiring "Compiz" name [for pure ego reasons!] was a disaster for that project, in terms of developer interest and growth.)

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 14:48 UTC (Wed) by nye (guest, #51576) [Link]

>I think the GNU/ prefix, based on just 8% code contribution, has become largely moot by today.

Hmm, if anything I'd say it's *more* relevant today, thanks to the existance of viable *non-GNU* Linuxes, with Android being the most prominent example.

(There was something else I was reading about a week or two back where I was like 'Stop calling it GNU/Linux! There's no GNU in it'. Can't think what it was though. Maybe it was Android-based after all.)

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 4:59 UTC (Wed) by ldo (subscriber, #40946) [Link]

Remove the kernel and then report how much of that software runs.

Points scored based on who can hold who to ransom, anybody?

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 5:04 UTC (Wed) by pranith (subscriber, #53092) [Link]

remove gcc and see how much of that kernel compiles...

wait clang actually compiles the linux kernel http://lwn.net/Articles/411654/

It's not the point...

Posted Jun 1, 2011 6:54 UTC (Wed) by khim (subscriber, #9252) [Link]

Of course there are alternatives! There are different version of libc, too. And we had operation systems before GNU and Linux come on the scene. But the fact still remains that Linux and GNU shape the rest of the OS.

In fact recent developments (android, clang, etc) make the point more acute, not less. 10 years ago name "GNU/Linux" was pointless nitpicking, today it's a way to distinguish numberous non-GNU Linuxes from GNU/Linux descendants.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 3, 2011 16:08 UTC (Fri) by dmag (subscriber, #17775) [Link]

TCC did that years ago.

http://bellard.org/tcc/tccboot.html

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 5:20 UTC (Wed) by mikankun (guest, #74785) [Link]

Both are equally important hence why I agree with Stallman in saying GNU/Linux.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 6:40 UTC (Wed) by berto (subscriber, #58604) [Link]

> Remove the kernel and then report how much of that software runs.

Quite a lot, apparently: http://www.debian.org/ports/kfreebsd-gnu/

Anyway, Stallman's point is not that the GNU project wrote most of the software, but that all of it was written (and selected) with the sole purpose of creating a free operating system:

"Many other people and projects have contributed code to the system, and some of this code is just as vital as anything the GNU Project wrote. But the GNU Project did one other crucial thing which no one else did: we made a complete free operating system our explicit goal."

http://lkml.org/lkml/1999/4/6/13

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 7:04 UTC (Wed) by blaa (guest, #75321) [Link]

Fact is, GNU did not produce a working operating system.
If I set out to swim the English Channel, and get to within sight of the other coast before I drown, then I have not swum the English Channel. I hope this is clear.
Linux is not, never has been, and it is unlikely that it will ever be GNU software.
As the great man said, go write your own kernel, and then you get naming rights.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 7:31 UTC (Wed) by berto (subscriber, #58604) [Link]

> If I set out to swim the English Channel, and get to within sight of the other coast before I drown, then I have not swum the English Channel

And neither Magellan completed any trip around the globe, yet that didn't prevent him from getting credit as the leader of the expedition.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 9:50 UTC (Wed) by fandom (subscriber, #4028) [Link]

Actually, the one who got the "tu primus circumdedisti me"* motto was Elcano

*The first one who surrounded me

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 11:00 UTC (Wed) by berto (subscriber, #58604) [Link]

Yes, Elcano was awarded for circumnavigating the globe, and rightfully so.

But no one denies Magellan's legacy just because he didn't complete the expedition.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 13:00 UTC (Wed) by Zack (guest, #37335) [Link]

>Fact is, GNU did not produce a working operating system.

Bar some extreme application of the NIH symdrome, they actually did. I should know, I'm using it right now.

GNU is about producing an operating system comprised of free software. If someone else writes a piece of that, even if they care not about producing a fully free operating system themselves, if the license is right, GNU can use it.

For me, the most important thing about my operating system is that it's free software, so I call it GNU; it's important to me to emphasize that aspect. The linux kernel is certainly an impressive and well engineered piece of software, but the values it emphasises are not of primary importance to me. Fortunately the license makes it free software, so I can use with my GNU system.

You can call the system whatever you like, whereas I will refer to it as GNU or GNU/Linux, even if the amount of software that was specifically produced for GNU would be reduced to nil.

If some day all distributors/contributors would decide that the primary value of the "linux operating system" was freedom, I would call it linux too. Because it would be all that the GNU name tries to establish but more popular. But until that day, GNU will have to do.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 14:45 UTC (Wed) by vonbrand (subscriber, #4458) [Link]

I guess the BSD folks will be thilled to hear that they did build the GNU system too (all free, license is right, so it's GNU, right?)...

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 15:23 UTC (Wed) by Zack (guest, #37335) [Link]

>I guess the BSD folks will be thilled to hear that they did build the GNU system too

They should be! If they managed to build a completely free operating system succesfully they would have no reason not to be thrilled at the completion or success of such a monumental task.

I don't think they will call it GNU though. The BSD folks also go a long way back when they set out to write a free operating system. But the set of values they wanted to achieve are different than those of the GNU project.
There is no reason, historically or otherwise, to call their operating systems "GNU", although I think most of the various forks do retain the name "BSD" in their project name.

That said, I'm sure I run various bits and pieces of BSD software on my GNU/Linux system, since, as you write, "[the] license is right."

Remove the GNU C library and then report how much of that software runs.

Posted Jun 3, 2011 14:35 UTC (Fri) by vonbrand (subscriber, #4458) [Link]

Exactly. The BSD folks won't be thrilled because they don't agree with the FSF stance.

I for one would like it better if people just agreed on thanking for (software) gifts, wherever they come from (be it public domain, TeX, X, BSD, GNU, ...), and take their political views elsewhere. In particular, please don't insist on slapping your campaign flyer on everything that comes your way.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 13:34 UTC (Wed) by Trelane (subscriber, #56877) [Link]

they didn't?

Remove the GNU C library and then report how much of that software runs.

Posted Jun 2, 2011 7:06 UTC (Thu) by freddyh (subscriber, #21133) [Link]

They indeed did, but the mentioned quote was from years before the Hurd was finished.
I don't need to remind you of how much the Hurd was delayed in the early 90's, do I?

The point is - 'freedom'

Posted Jun 1, 2011 12:06 UTC (Wed) by candtalan (guest, #75332) [Link]

@berto
Yes, thank you.

In addition to a lack of an up front recognition of the Freedom ethic, the use of the word 'Linux' *only* when referring to an operating system creates an uncertainty. This is because Linux is formally the name of the kernel, not an OS. I note that we do not really have a generic name for a Linux based Operating System in its own right except perhaps 'GNU/Linux', or a brand name such as Ubuntu, Fedora, etc.

Opposition to Linux based OS use comes in many forms, including well funded 'FUD'. Fear Uncertainly and Doubt. By unwittingly underwriting Uncertainty in the Linux using culture we do ourselves a dis service.

The point is - 'freedom'

Posted Jun 1, 2011 12:59 UTC (Wed) by daniels (subscriber, #16193) [Link]

> In addition to a lack of an up front recognition of the Freedom ethic, the use of the word 'Linux' *only*

Maybe because people are discussing an operating system rather than an ethic which some hold to be the most important thing, and others less so?

> when referring to an operating system creates an uncertainty.

It's not an uncertainty that really has any practical effect. For example, I'm unsure whether GNU/Linux refers to a system running sysvinit, upstart, or systemd? Does it run X or not? What about GNOME, KDE, other (GNUstep)?

If people are referring to Android, they're pretty good at calling it Android. The people running uclibc and other exotic userlands are such a niche that it is not in any way a useful distinction to go out of your way to make.

Note here when I say 'useful distinction', I mean in purely technical terms; it's apparently a useful distinction for an organisation seeking to hang on to their relevance by piggybacking on the work of others who do not necessarily share their goals.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 6:53 UTC (Wed) by mti (subscriber, #5390) [Link]

Remove all closed source software integrated in the hardware (BIOS, microcode, firmware, ...) and see how much works;-)

Not sure what I'm trying to say.

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 8:18 UTC (Wed) by jengelh (subscriber, #33263) [Link]

Remove closed hardware and see h... oh bugger!

Remove the GNU C library and then report how much of that software runs.

Posted Jun 1, 2011 12:37 UTC (Wed) by dneary (subscriber, #55185) [Link]

Most of the software in the list is perfectly portable to other OS kernels.

Most of the software is perfectly portable to alternative libcs.

And if it's not, it should be.

Dave.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 5:21 UTC (Wed) by dlang (✭ supporter ✭, #313) [Link]

let the FSF create a GPLv4 that alienates enough developers and I'll bet that in about 6 months there will be a new libc available.

remember, even the libc development is nor primarily done by the FSF, and hasn't been for years.

we came close to finding this out with the GPLv3, but the FSF backed down and revised the drafts to make it more acceptable to people

there isn't any piece of the system that couldn't be replaced relativly quickly by something else if the developers of that piece were to go nuts (and this includes the kernel, remember that debian is shipping a BSD kernel based version)

if you look at any component of your system, someone can name a alternate piece of software to use. it may not be quite as good right now (remember, different people have different definitions of 'good'), but if there was pressure to fix it quickly the rate of improvement would be staggering.

and that's ignoring the possibility of a fork taking place (like happened with xfree86/x.org)

probably the hardest component to replace in the short term would be X, but with wayland in the wings, even that is being challenged.

it's interesting to see this type of analysis.

How much GNU is there in GNU/Linux?

Posted Jun 2, 2011 13:31 UTC (Thu) by tchernobog (guest, #73595) [Link]

Well, you could say that no code comes directly from the FSF. The GNU project and the FSF are two distinct initiatives; one technical, the other legal.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 5:21 UTC (Wed) by tetromino (subscriber, #33846) [Link]

> Remove the GNU C library and then report how much of that software runs.

FreeBSD seems to be doing an OK job running all of that software - well, other than systemd, of course - without glibc. (And without the Linux kernel too, one might add.)

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 5:39 UTC (Wed) by mikankun (guest, #74785) [Link]

I'm well aware but the article and my comment were about GNU/Linux and not BSD.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 5:58 UTC (Wed) by dlang (✭ supporter ✭, #313) [Link]

well if you define the system as one that is built aroud GNU software you can easily say that it won' work without that software.

if however you define the system as one that runs the application software the users need, then you don't have justification for ignoring *BSD (or the various libc/compiler options)

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 9:43 UTC (Wed) by Pawlerson (guest, #74136) [Link]

"if however you define the system as one that runs the application software the users need, then you don't have justification for ignoring *BSD (or the various libc/compiler options)"

If bsd doesn't do what he expects from the usable system, he has justification for ignoring it. It seems most people aren't pleased with bsd (hence Linux is far more popular) and while article is about GNU and Linux I recommend to stick to the topic.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 13:39 UTC (Wed) by hmh (subscriber, #3838) [Link]

The BSD userland is horrible IMO. The kernel, not so much. It lags behind Linux when it comes down to drivers, but for what it DOES support, it is sometimes superior.

So yes, Debian GNU/kFreeBSD is actually very nice. When it works with all your hardware.

And one would have to ask people to compare Debian GNU/kFreeBSD with straight FreeBSD to know whether they prefer the GNUish/Linuxish userland or the BSDish userland, and compare Debian GNU/Linux with Debian GNU/kFreeBSD to know whether they prefer the Linux or FreeBSD kernel.

PS: "GNU/" prefix added because that's how we call these ports officially in Debian.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 14:46 UTC (Wed) by Pawlerson (guest, #74136) [Link]

"The BSD userland is horrible IMO. The kernel, not so much. It lags behind Linux when it comes down to drivers, but for what it DOES support, it is sometimes superior."

I hope you didn't mean superior to Linux, because it lags behind in many other areas today. :)

"So yes, Debian GNU/kFreeBSD is actually very nice. When it works with all your hardware."

GNU userland makes a huge difference. I prefer to use APT rather than bsd ports. Debian GNU/kFreeBSD is much more appealing than FreeBSD and there's a much newer GCC, right?

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 7:06 UTC (Wed) by khim (subscriber, #9252) [Link]

FreeBSD seems to be doing an OK job running all of that software - well, other than systemd, of course - without glibc.

Sorry, but this not really true. Most real FreeBSD systems include Linuxulator and glibc to run things like Acrobat Reader or Opera. And they use GLibC to do that.

This succulently shows that right now, today, GLibC is more important then kernel. Recent developments make it less relevant, though: Android does not use GLibC and supports more interesting applications, then GNU/Linux, for example. If/when tablets and desktop converge it'll be interesting to see what happens.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 9:06 UTC (Wed) by danieldk (guest, #27876) [Link]

But then Acrobat Reader is not part of Debian either, and probably a lot of Debian users will never install it. The point is that you can provide much of the functionality of a standard open source desktop or server system without glibc or even gcc.

(By the way, Opera offers a native FreeBSD version.)

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 9:08 UTC (Wed) by trasz (guest, #45786) [Link]

There is a native Opera for FreeBSD. I have no idea why someone would want to use Acrobat. Linuxulator is used mostly for Flash.

How much GNU is there in GNU/Linux?

Posted Jun 3, 2011 14:56 UTC (Fri) by qubit (guest, #57802) [Link]

This succulently shows that right now, today, GLibC is more important then kernel.
This must be what they mean when they talk about the juicy details...

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 5:29 UTC (Wed) by rsidd (subscriber, #2582) [Link]

Well, since you bring that up... Here's what Ulrich Drepper had to say about RMS, GNU and glibc, about ten years ago.

  [...] For example, permission to use the GNU C Library in non-free
  programs enables many more people to use the whole GNU operating
  system, as well as its variant, the GNU/Linux operating system.

This $&%$& demands everything to be labeled in a way which credits him
and he does not stop before making completely wrong statements like
"its variant".  I find this completely unacceptable and can assure
everybody that I consider none of the code I contributed to glibc
(which is quite a lot) to be as part of the GNU project and so a major
part of what Stallman claims credit for is simply going away.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 5:47 UTC (Wed) by mikankun (guest, #74785) [Link]

I understand where he's coming from but regardless if he's contributing code to glibc he's making his code part of a GNU project as the library's development was funded by the FSF for the GNU project.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 6:00 UTC (Wed) by dlang (✭ supporter ✭, #313) [Link]

that is the attitude that I was thinking of

if he were to fork the code (which would basically consist of him choosing different hosting at this point, he really has run all the glibc development for a _long_ time), would you still consider that a GNU contribution?

It's very clear cut, actually...

Posted Jun 1, 2011 7:12 UTC (Wed) by khim (subscriber, #9252) [Link]

When you contribute to GNU you assign your copyright to FSF. As long as you do that yes, it's GNU contribution. Is it voluntary or not is good question, but it's clearly part of GNU.

If the supposed fork will stop assigning copyrights to FSF you can claim it's no longer GNU project (like happened with XEmacs). The history shows it's not easy to maintain viable full-blown fork of GNU software (it's possible to maintain set of incremental patches like EGLibC does - but this hardly can be called a separate forked project).

It's very clear cut, actually...

Posted Jun 1, 2011 13:16 UTC (Wed) by nicooo (guest, #69134) [Link]

GCC is a fork that has been maintained since 1997.

Sorry, but no...

Posted Jun 2, 2011 8:28 UTC (Thu) by khim (subscriber, #9252) [Link]

EGCS was an experiment in new development methodology and never tried to split from GNU. All changes were always assigned to FSF and when EGCS was renamed to GCC it still accepted FSF's (actually RMS) decisions WRT to licenses, etc.

Basically it never tried to stray away from guidance of FSF so there never was any need to fight with it. Emacs/XEmacs was such a split while xemacs is quite successful you rarely can find it installed by default.

True, association with GNU is very often a burden and the only thing it gives the project is exposure - but this is quite important for free projects...

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 6:11 UTC (Wed) by ncm (subscriber, #165) [Link]

It really makes no difference what you "consider" to be part of the GNU project. The fact is that Glibc is the software you chose to add to. All the code you wrote for it is now held under FSF's exclusive copyright, with your explicit signed approval. Glibc was then and is still unambiguously under FSF management, $&%$& or no. (Eglibc, used in Debian and offshoots, is another story; your code is in there too, and still owned by FSF, but managed by somebody else. You might feel better about working on eglibc.)

The fact is that the Linux kernel would have been useless had there not been a GNU project, already in place, to drop it wholesale into. If Linux had not come along, a newly unencumbered BSD kernel would have been adapted a year or two later, and would since have forked, and would now be managed by mostly the same people as do Linux today -- maybe Linus included. It would, then, have been a GNU/BSD system. The same names would be complaining about that, instead, with arguments of exactly equal merit.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 7:48 UTC (Wed) by rsidd (subscriber, #2582) [Link]

First, I am not Ulrich Drepper. I thought I made it clear that I was merely quoting him.

Second, the idea that the GNU system in 1991 was a complete Unix-like system lacking only a kernel, into which Linux could conveniently be dropped, is a myth propagated by Stallman. There is no such thing as a complete system without a kernel. GNU did contribute the C library, compiler/toolchain, and a bunch of system utilities. These things existed in, eg, /opt/gnu on Sun systems, and were very far from being a complete system. BSD contributed a bunch of other utilities. As did MIT (X), Knuth (TeX), Ousterhout (Tcl/Tk), Wall (Perl), and many, many others. Putting all of these disparate things together into a working system was a significant undertaking, that was not done until AFTER Linus published his kernel -- because A WORKING SYSTEM REQUIRES A KERNEL! Which, incidentally, the GNU project still does not have, twenty years down the line -- hence the grimace whenever they encounter Linux.

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 9:31 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link]

>Second, the idea that the GNU system in 1991 was a complete Unix-like system lacking only a kernel, into which Linux could conveniently be dropped, is a myth propagated by Stallman. There is no such thing as a complete system without a kernel. GNU did contribute the C library, compiler/toolchain, and a bunch of system utilities.

"What did the Romans ever do for us?" (c) Monty Python

How much GNU is there in GNU/Linux?

Posted Jun 1, 2011 9:09 UTC (Wed) by rodgerd (guest, #58896) [Link]

Well, it's not Ubunutu, but my Android devices run pretty well, thanks for asking.

What exactly is being measured?

Posted Jun 1, 2011 15:46 UTC (Wed) by faramir (subscriber, #2327) [Link]

After following two links, it looks like this analysis is over the
entire Ubuntu 'main' repository. Frankly, that includes many programs
that I don't have installed on my system and I install lots of stuff.
I think it would be very interesting to see how things change if you
look at just what is included in a default install.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds