LWN.net Logo

GPLv3: What the Hackers Said (Linux Journal)

GPLv3: What the Hackers Said (Linux Journal)

Posted Oct 24, 2006 16:10 UTC (Tue) by AJWM (subscriber, #15888)
In reply to: GPLv3: What the Hackers Said (Linux Journal) by Zack
Parent article: GPLv3: What the Hackers Said (Linux Journal)

> And X is not part of the specification, but things like the interface glibc provides and utilities such as sed, awk, yacc and a lot of others are(1).

Interesting you should mention yacc. You do know that there is no GNU yacc, don't you? (The GNU project has bison, which is 99+% yacc-compatible). The yacc installed in the two Linux distros I have handy (Suse and Redhat) is in fact from BSD. (Bison is also installed in case anything is sensitive to the differences.)

The fact is that almost any distro is a mix of BSD, GNU, and various third party apps and libraries, and a good chunk of the UNIX-required utilities are not GNU, but BSD (eg yacc, crontab, mail) or 3rd party but BSD-licensed (eg file), or something else entirely (lp).


(Log in to post comments)

GPLv3: What the Hackers Said (Linux Journal)

Posted Oct 24, 2006 16:41 UTC (Tue) by thebluesgnr (guest, #37963) [Link]

A BSD system will have programs from GNU, and a GNU system will have programs from BSD. I'm not sure yacc is the best example, at least Debian and Red Hat/Fedora use GNU Bison by default, because many of the GNU programs used on these systems require it.

This is largely irrelevant, because "taken as wholes, they (GNU and BSD) are two different systems that evolved separately". Of course, Linux doesn't have its own implementation because it's a kernel and not a system, unlike BSD and GNU. By bringing up yacc, or any Unix program for that matter, you just prove the point you're trying to argue against.

GPLv3: What the Hackers Said (Linux Journal)

Posted Oct 24, 2006 17:03 UTC (Tue) by AJWM (subscriber, #15888) [Link]

> By bringing up yacc, or any Unix program for that matter, you just prove the point you're trying to argue against.

And what point was that, exactly?

The fact is that in every comment to this article that has listed a series of utilities as "proof" that the GNU programs are essential, the authors have included programs that are not, in fact, GNU programs.

Which indicates to me that they don't quite know what they're talking about.

Are the GNU tools tremendously useful? Of course. Are they irreplaceable? Of course not.

GPLv3: What the Hackers Said (Linux Journal)

Posted Oct 24, 2006 17:18 UTC (Tue) by jstAusr (guest, #27224) [Link]

The point is, how many of those programs are Linux?

GPLv3: What the Hackers Said (Linux Journal)

Posted Oct 24, 2006 20:39 UTC (Tue) by k8to (subscriber, #15413) [Link]

This is where the computer nerds of the world show thier unfortunate penchant for selecting for consistency over clarity.

Linux is a name which has come to me the set of things that people conventionally ran over the Linux kernel. This name came to exist, pretty much by an accident of history (Linux being the most available kernel on which to run free unix tools). The accidental nature of the origin of the name, though, has pretty much no bearing on the fact that the name does exist, and does have clear meaning for computer users and developers. It is the set of tools libraries and so on which have come to exist via consensus, competition, apeing prior standards, and so on. Programmers, users, sysadmins and so on all know what "Linux" means, and so the term is valid, whether or not the history seems logical to you.

GPLv3: What the Hackers Said (Linux Journal)

Posted Oct 25, 2006 4:32 UTC (Wed) by AJWM (subscriber, #15888) [Link]

> The point is, how many of those programs are Linux?

All of them.

Every Linux distro I have a copy of includes those programs, ported, adapted and packaged by employees of the distro manufacturer.

I'm sorry, did you mean "how many of those programs were originally produced as part of the linux kernel project"? Who cares? They're all based on (conceptually) programs originally developed by Bell Labs, and anyone who has significant experience developing software will tell you that it's a hell of a lot easier to develop a program when you have a working model and a man page than it is to develop one from nothing.

Kernighan (yes that one) and Plauger (of Whitesmiths, who did an independent Unix implementation) wrote a book, nearly 10 years before the GNU Manifesto, called "Software Tools" (1976, a later version was "Software Tools in Pascal", in 1981), which described (with some source code) how to write a good many of the basic Unix tools (cp, ar, ls, sed, etc), including a parser and compiler. It's just not that hard. (I did it for a CDC Cyber 170 running NOS, with its bizarre character set.)

Certainly the GNU team has gone beyond that with some pretty feature-rich implementations of those tools, and because they exist and are free, it isn't necessary to re-invent them (although they could be). But that doesn't give GNU any naming rights over a project that happens to use and incorporate some of those tools, any more than BSD, X.org, KDE or even SCO have naming rights.

Naming rights

Posted Oct 25, 2006 9:00 UTC (Wed) by man_ls (subscriber, #15091) [Link]

Pray tell us what gives Torvalds naming rights over those tools, then? Calling a whole operating system by his first name? Writing a kernel is not that hard, many people have done it over the years; certainly not a monolithic kernel. Just look at the number of embedded kernels out there, and there are lots of free software ones. True, the Linux team have done a feature-rich implementation of a kernel; but they could be easily replaced.

This discussion is becoming bizarre.

Naming rights

Posted Oct 25, 2006 16:01 UTC (Wed) by nix (subscriber, #2304) [Link]

He didn't name them.

He didn't even name his kernel, an FTP site admin did that :)

The distributors choose to name their distributions, which include the Linux kernel, with names including the name of that kernel. That is up to them. Some of them, e.g. Debian, also give credit to GNU in the name. That, too, is up to them. Some of them mention neither.

The term 'a Linux distribution' has historical roots, derived from the fact that even the earliest Linux distributions included a Linux kernel (long before they included, say, a GNU libc), and that those distributions were *explicitly put together* to get the Linux kernel and a usable collection of things around it out where people could use them, and were originally put together by people associated with kernel hacking.

Naming rights

Posted Oct 25, 2006 18:04 UTC (Wed) by jstAusr (guest, #27224) [Link]

Alan Cox wrote:
>There is no such thing as GNU/Linux. For an article like this it's really important to understand and clarify that (and from the US view also as a trademark matter).

And I think that is the kind of statement from kernel hackers that started the current thread. Now if you want to write about subjects that are tangent to that we can continue on forever. And just to get things started in the right direction, what to you think about butterflies?

Now if one of the main kernel hackers is going to suggest possible legal action against the use of the term GNU/Linux then there is a problem.

Despite what they say, it is the kernel hackers that are changing the game by not wanting to make adjustments to the new playing field that has been presented by mega-corporations and their paid in full politician friends.

I don't want to steal anything or use anything from the media companies that I don't have a clear legal right to use, however, I do not want the media companies to be my MASTER, especially when I don't have any interest in their products in the first place. If the kernel hackers are willing to make that sacrifice, that is fine, but they have no one to blaim but themselves.

I have never seen anything from the FSF or its agents that suggests they want to hijack the term Linux, they just want people to realize that there is a whole lot more to what is running on their computers than what is provided by the kernel people. The problem Alan Cox is having with someone possibly thinking Linux is a GNU project when the term GNU/Linux is used, stems from the fact that the kernel hackers don't mind if people think that the total of the system is Linux. If the kernel hackers would make the distinction that Linux is the kernel, the problem would eventially go away.

Living in a world where I am a drone for the use of the super rich has no appeal to me. I realize that you may prefer that and that is fine.

Naming rights

Posted Oct 25, 2006 20:21 UTC (Wed) by nix (subscriber, #2304) [Link]

I'll admit failing to understand how you went from Linux being called what
it is because of historical inertia to being a `drone for the use of the
super rich'.

Naming rights

Posted Oct 26, 2006 3:57 UTC (Thu) by walken (subscriber, #7089) [Link]

>>There is no such thing as GNU/Linux. For an article like this it's really important to understand and clarify that (and from the US view also as a trademark matter).

>Now if one of the main kernel hackers is going to suggest possible legal action against the use of the term GNU/Linux then there is a problem.

Yeah, I felt that way when I read Alan's statement too.

No problem though, I'll just call the OS 'GNU' from now on, in order to avoid infringing on Linux's copyright. I'll reserve 'linux' for when I talk about the kernel.

:)

Sounds a bit arrogant

Posted Oct 24, 2006 19:51 UTC (Tue) by man_ls (subscriber, #15091) [Link]

The fact is that in every comment to this article that has listed a series of utilities as "proof" that the GNU programs are essential, the authors have included programs that are not, in fact, GNU programs.
Wow, I feel I'm the lucky one. I said "Bash, cp or glibc".
Which indicates to me that they don't quite know what they're talking about.
What? people may erroneously include a *BSD utility, but it does not matter for the main issue: as jstAusr said, essential libraries and utilities are not part of the kernel. However, FreeBSD hackers did in fact intend to build an OS; they just were luckier with their internal kernel (and not so much with external efforts).

Sounds a bit arrogant

Posted Oct 24, 2006 20:32 UTC (Tue) by AJWM (subscriber, #15888) [Link]

> I feel I'm the lucky one. I said "Bash, cp or glibc".

Um, glibc isn't a command or utility, it's a library.

The GNU tools are irreplaceable

Posted Oct 24, 2006 19:53 UTC (Tue) by JoeBuck (subscriber, #2330) [Link]

Neither the free BSDs nor any Linux distro can be built with any free compiler other than GCC. Every program that's run on top of a Linux-based desktop or server distro uses GNU libc (many embedded Linux systems do not).

The GNU tools are irreplaceable

Posted Oct 24, 2006 20:52 UTC (Tue) by AJWM (subscriber, #15888) [Link]

So you're saying that nobody else on the entire planet could possibly write a free C compiler? Or that free source cannot be compiled with a non-free compiler?

Go on, pull the other one.

There are other free C compilers out there. Granted, not quite as capable as the GCC, but that's more from not reinventing the wheel than from any lack of ability to make it so. If push came to shove, the Linux and BSD and other developers could in short order modify kernel source and compilers to make one compilable by the other.

The GNU tools are irreplaceable

Posted Oct 25, 2006 16:05 UTC (Wed) by nix (subscriber, #2304) [Link]

It's not that nobody could do it: it's that modifying Linux to be compilable by a compiler not implementing a large subset of the set of C extensions known as GNU C would be sufficiently difficult that nobody would bother.

What happens, instead, is that vendors of other (proprietary) C compilers that run on Linux modify their compilers to support enough of GNU C that they can compile the kernel: and even then it tends to break because the compilers don't necessarily support as many as GCC does, and because kernel hackers tend to build the kernel with GCC, so it gets most of its compilation and run-testing and compiler bug workarounds and so on with GCC in view.

All free-as-in-freedom C compilers remotely capable enough to compile the Linux kernel incorporate large amounts of GCC source anyway (the SGI(?) one whose name I forget and LLVM both use the GCC backends and parts of the middle-end). The non-free ones presumably don't, but they're also not amenable to modification by the kernel hackers.

The GNU tools are irreplaceable

Posted Nov 2, 2006 22:56 UTC (Thu) by anton (guest, #25547) [Link]

All free-as-in-freedom C compilers remotely capable enough to compile the Linux kernel incorporate large amounts of GCC source anyway
Tcc can compile the Linux kernel, and (judging from the licence (LGPL), and from the bugs that turn up) does not incorporate GCC source code. However, that does not mean you can compile the rest of a Linux distribution with tcc.

The GNU tools are irreplaceable

Posted Nov 14, 2006 20:50 UTC (Tue) by nix (subscriber, #2304) [Link]

Can it? Wow, it's come on a long way since I saw it last.

I really must look at it again.

(Mind you, I wouldn't much want to run a highly-loaded machine on such a
kernel: tcc intentionally avoids doing things like optimization...)

yacc on GNU/Linux

Posted Oct 24, 2006 23:49 UTC (Tue) by xoddam (subscriber, #2322) [Link]

You do know that there is no GNU yacc, don't you?
On my Debian-ish system:
$ cat /usr/bin/yacc
#! /bin/sh
exec /usr/bin/bison -y "$@"

GPLv3: What the Hackers Said (Linux Journal)

Posted Nov 2, 2006 22:44 UTC (Thu) by anton (guest, #25547) [Link]

You do know that there is no GNU yacc, don't you? (The GNU project has bison, which is 99+% yacc-compatible). The yacc installed in the two Linux distros I have handy (Suse and Redhat) is in fact from BSD.
Both Berkeley yacc and GNU Bison are descendents of a program called Bison. Therefore I doubt that Berkeley yacc is more (AT&T)-yacc compatible than GNU Bison.

On the two distributions that I tested (Gentoo and Debian), the yacc command invokes bison -y.

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