- The GPL Bargain
- Copyleft and Reciprocity
- Policy Objectives
- The Preamble to the GPL
- GPL as Template
- The GPL Applies to Programs
- Linking to GPL Software
- Copyright Law and Linking
- The LGPL Alternative
- GPL Grant of License
- Access to Source Code
- "At No Charge"
- Other Obligations in the GPL
- The GPL and Patents
- Accepting the GPL
Traditional software licenses serve business needs. Their objective is usually to maximize profit from licensing of the software. The GPL has an entirely different policy objective. It seeks to maximize the amount of free software available in the public commons.
The authors of the GPL point out that placing software into the public commons under an academic open source license doesn't always serve that important purpose. Any licensee under an academic open source license can take that free software, create derivative works from it, and then distribute those derivative works under a proprietary license. The resulting software is not free. The Free Software Foundation politely characterizes these licensees as "uncooperative people."
They can make changes, many or few, and distribute the result as a proprietary product. People who receive the program in that modified form do not have the freedom that the original author gave them; the middleman has stripped it away. (From www.fsf.org.)
The GPL seeks to prevent that situation by imposing a reciprocity obligation on all such middlemen. Licensees must use the GPL as their license if they distribute modified versions of the software. Any resulting derivative works will also be free software.
The GPL also seeks to prevent a software problem that was common in the early 1990s and continues to this day. Many software vendors believe that the only path to profit is through the creation of unique proprietary versions of standard software. This leads to software incompatibility, ultimately locking customers into specific vendors, reducing meaningful choices for consumers, and creating roadblocks to software sharing. The story of UNIX is replete with examples of that. (Eric Raymond's book, The Art of UNIX Programming, paints a turbulent history of the various proprietary forks of the UNIX operating system.)
By the time Linux was released under the GPL, there were many versions of UNIX available from many vendors, many of them incompatible with each other. Now, under the GPL, there can be many versions of Linux, but the improvements in any of them can be incorporated back into the rest of them as market forces dictate. There are no longer licensing obstacles to taking the best components of Linux software available anywhere and incorporating them back into anyone else's version of Linux. Compatibility can be created at will by any licensee of Linux. That is guaranteed by the GPL.
A third policy point of the GPL is that free software is an ethical objective, distinct from the practical objective of making the source code of software available to licensees. Free software, they say, is a good in itself.
Whatever approach you use, it helps to have determination and adopt an ethical perspective, as we do in the Free Software Movement. To treat the public ethically, the software should be freeas in freedomfor the whole public. (See www.fsf.org.)
Because this is a book about the law of licensing rather than ethics, I will only make two comments about this. First, contract and copyright law doesn't generally deal with the ethical concerns of private parties; courts are expected to interpret the plain language of their license agreements in accordance with legal principles only. Second, whether you agree or disagree with the ethics of a licensor, accepting software under a license binds you to the terms of that license; you need only concern yourself with doing what you agreed to, not with whatever gods or demons the licensor prays to.