bstpierre.org

Articles

Xena, Warrior Princess

May 21, 2002

Richard Stallman doesn't know where the line is. I'm not even sure he knows the line exists. Software should be free, he says. "We have no non-free systems or applications on [our systems] now, and our principles say we must keep it that way."

To put this in context: in this piece, he responds to this article where he is criticized for insisting on calling Linux by what he feels is the better "GNU/Linux" moniker. I say call it whatever you want. Some people I know have Linux installed on their computers, and when asked they would say "I run Mandrake", or "I run Red Hat", or "I dual boot Mandrake, Debian, and Win98". Call it "Xena, Warrior Princess" if you so prefer. Who the heck cares?

Stallman cares, that's who! He wants full credit for the pieces of the system that he created. I see his point, it is somewhat valid -- the FSF developed several of the core pieces of any Linux distribution, and it might be nice to give them some credit. That's where the validity ends. It might be nice to give them some credit. Period. End of statement.

But Stallman gets into semantics. The reasoning is as follows (at least as far as what I can understand): the kernel should be called Linux (named after primary author Linus Torvalds), but the entire system should be called GNU/Linux because several key pieces were developed by the GNU Project. The components of the so-called "GNU/Linux" system that are typically cited are GNU Emacs, the GNU C Compiler (gcc), the GNU Debugger (gdb), GNU C Library (glibc). These are indeed important pieces. The code in one distribution was apparently made up of more than one-fourth GNU-produced code. Even more, "the reason it is a system--and not just a collection of useful programs -- is because the GNU Project set out to make it one."

Shouldn't credit for coming up with all the pieces necessary to have a Unix-like system go the the guys that invented Unix? But "[The GNU Project] wrote essential but unexciting major components, such as the assembler and linker, because you can't have a system without them." Well, duh. Of course you can't have an operating environment without an assembler and linker. It doesn't take a master planner or a stroke of forward-thinking genius to figure that out.

But the best part of the article, the thing that takes the cake, is this:

The Linux sources themselves have an even more serious problem with non-free software: they actually contain some. Quite a few device drivers contain series of numbers that represent firmware programs to be installed in the device. These programs are not free software. A few numbers to be deposited into device registers are one thing; a substantial program in binary is another.

What I'm hearing from Stallman (based on his earlier statement about no non-free systems or applications in FSF systems) is that he doesn't have Linux running on the systems at the FSF. No, that must be wrong. They probably do have Linux (oops, I mean "GNU/Linux") -- special "scrubbed" versions that -- don't contain this non-free contamination.

And finally, my point: where's the line? Surely there is a line here somewhere. Do you write your own BIOS, or simply stick with the binaries that come loaded with your PC? Do you really need to have the source code for the firmware? Wait, there's some programmable logic on one of the peripheral cards in your PC: do you ditch the card because the vendor won't provide you with the Verilog sources that get compiled into that programmable logic? Do you refuse to run on hardware for which you don't have complete schematics?

Not me. I'll stick with running "Xena, Warrior Princess" on whatever hardware, firmware, and chips I have available.