The GNU Licenses Problem
by Christopher Seawood (written in summer of 1998)
Copyright 1998, 1999 Christopher Seawood

Perhaps I'll come up with a more appropriate title some other time. This is more of a editorial/get-it-off-my-chest article than a project, but...

Over the last couple of years, I've grown more and more fed up with the GPL. I find it's tainting feature is highly annoying. (In one interpretation, it requires all programs it shares process space with to also be under GPL or a similar license.) Also the number of people constantly pushing GPL or nothing has gotten a bit old. I just want to yell at them "Hey! Maybe this GNU thing isn't all it's cracked up to be. Let's think about it for a moment." Yes, I'm quite aware of RMS' pragmatic idealism behind the entire GNU movement. I don't agree with all of his points. This is paritially because I notice that his ideals and the results of his actions are contradictory. And partially because I do not believe that all software inherently should be free.

It seems fairly ironic to me (and many others) that GPL is meant to prevent software hoarding by proprietary developers, but hoards software itself by stating that it can only be used with software under a similar license. Quite obviously, it's not the same (ideologically) as a commercial company not releasing its source code, but it has the same effect. Even RMS' "Why Software Should Not Have Owners" paper states this fairly clearly: "Any attempt to block the sharing of information, no matter why, leads to the same methods and the same harshness."[1] The GNU situation is almost worse because people think that "free" software comes without any strings attached. Regardless of how RMS/FSF tries to redefine the word "free", it is quite clear that the only "free" software is public domain. (Yet another reason why "Open Source" seems a more appropriate term for FSF's definition of "free software".)

People need to be educated about the reprecussions of using a certain license. Contrary to seemingly popular opinion, a lot of people do not know all of the restrictions of the GPL. Not everyone reads the license nor understands the license when they have read it. A number of people just use GPL for their programs because they are told that it will keep their programs free. They never bother to question the definition of free. They assume that it keeps the source freely available and stops commercial companies from using your source. This is not true. GPL stops your source from being used in proprietary applications that will be distributed. It does not stop a commercial company from using it nor does it stop developers from using your code to create proprietary programs for their own use since they did not distribute their modifications (one interpretation of the license).

Another interesting point: What is proprietary software? If you look at the FSF's definition, "Proprietary software is software that is not free or semi-free. Its use, redistribution or modification is prohibited, or requires you to ask for permission, or is restricted so much that you effectively can't do it freely. "[1] Outside of public domain software, I cannot think of any software this definition does not cover. Somehow, RMS seems to think that GNU software is exempt from this definition. I argue that it is not as it restricts what I can use GPL'd software with.

There are plenty of alternative licenses available (Artistic, BSD, MPL, etc) but they each have a different goals in mind. Unfortunately, they are not all interoperable. There is definitely a benefit to having software freely available. By freely available, I mean both the freedom (libre) to use, modify and redistribute as well as the freedom of price (gratuit). I've been told that my problem is that FSF's position is politically motivated and I'm trying to think logically about it. As much of a chuckle as that gave me, it does not resolve the issue. As I said, I do not believe all software should inherently be free. I believe the owner/developer of a piece of software has the right to decide upon the level of freedom of the software not one person or organization.

In light of the most recent "scandal" with Be and RMS' response, I think it's time to remove ourselves from the dependencies of GPL libraries. It would be <insert-token-good-phrase-here> if certain GPL libraries were released as or written under another license, perhaps LGPL or MPL.

Examples of such libraries are: libgdbm and libreadline.
I originally had libtermcap on this list but it turn out that the C source file to libtermcap is under the LGPL while its headers contain the GPL.

[1] Quoted without permission.