Understanding the GNU General Public License

In 1984, Richard Stallman was frustrated by the fact that he could not share UNIX with other people. Licenses were expensive and put restrictions upon the users.

Please note that I am not a lawyer. If you are seeking legal advice, please contact a lawyer.

Executive Summary

The GPL states that anyone:

  • can use the software without restrictions (for an unlimited time, unlimited users, for whatever purpose)
  • can distribute verbatim copies of the software including source without restrictions (to whoever, for free or for whatever price)
  • can view the source-code to the software
  • can modify the software without any restriction (without giving away own source-code)
  • can distribute modified versions of the software with only one restriction: Modified versions have to be under the GPL.

The GPL states that no one:

  • can restrict the freedoms granted by the GPL while passing the software on to others.
  • can deny others to see the software's source code. (If you redistribute without source, you need to include a written offer to supply it on demand for a 'reasonable fee'.)

The GPL is a valid contract. In fact, it is probably more valid than many commercial shrink-wrap licenses that people accept without thinking about them. You might not need to agree to it in order to run the software, but you surely have to agree to it in order to redistribute the software, because otherwise you would not have a license to redistribute, and thus you would be violating copyright-law.

The GPL has been enforced and stood valid in court in Germany.

Answer to common criticism

It is those last two points that are often confusing to people. Some people claim that the GPL would rob them of their ideas and code. But that is not the case. You can use your modified versions of GPL-software personally or within your company or institution without showing anyone the code. Only if you distribute these modified versions (for example, sell them in an embedded device), you need to make the source-code available to those who received the software from you.
Some people now go into arguments that it is not fair to tell anybody what he or she can do with their own modifications. But you have to consider this: How much did they save by having the original to build upon? It has to be valuable, or they would not be interested in modifying it. They could code it themselves.

But if a piece of software is valuable enough to modify it, people who do so have to pay the price. If I want to modify, let's say, MovableType, I need to contact six-apart and pay the price they want for that right. And that is just about getting the source and modifying it. We did not talk about distribution of the modifications, yet. If they don't want to give me that right, I am out of luck.

If I want to modify WordPress, or DokuWiki, or any other kind of GPL'd software, I don't need to ask for permission, because the authors already allowed me (and the world) to modify their software. That is very nice, because like that, I can make whatever small change I need in DokuWiki, and build LinuxBasics.org with it. Linus Torvalds expressed it as “standing on the shoulders of giants”.
If I use it only on that site (and others that I am hosting), I don't need to pay anything. If, and only if, I make my changes available to others, I need to pay the original authors. They have already stated the price: I have to license my changes under the GPL. If that price is too high for me, that's my decission.

Related reading

/home/www/LinuxBasics.org/data/pages/tutorials/pre/understand-the-gpl.txt · Last modified: 2008/07/20 21:08 (external edit)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0