License Class: GNU General Public Licenses (GPL)
One of the GNU General Public License's (GPL) distinguishing features is its 'copyleft' aspect. Copyleft licenses - of which the GPL is the most commonly used - require any work originating in the licensed code to be made available under the same provisions. This is of particular interest to companies basing for-sale products on GPL licensed open source software. If GPL licensed code is included in those for-sale products, by terms of the license the product must also be licensed under the GPL which means the source must be made available.
There are currently two versions of the GPL in use: versions 2 and 3. Version 1 was only around for a few years and was deprecated in the early 90's. Additionally, there is an Affero GPL. The fundamental differences between them can be understood as follows:
Version 2 and 3: The most important changes from version 2 to 3 relate to the handling of software patents as a result of the Microsoft-Novell patent infringement case, free software license compatibility, changes to the definition of "source code", and hardware restrictions on what is called 'tivoization' or software modification).
Additionally, allowances are now made for the addition of certain conditions or requirements around a particular developers contributions. As stated on Wikipedia, "One of those new optional requirements, sometimes referred to as the Affero clause, is intended to fulfill a request regarding software as a service; the permitting addition of this requirement makes GPLv3 compatible with the Affero General Public License."
Affero: The Affero General Public License (GNU AGPL) is similar to the GNU General Public License, except that it additionally covers the use of the software over a computer network, requiring that the complete source code be made available to any network user of the AGPL covered work. A Web application for example.
Note that the Gnu Lesser General Public License is related to the GPL, but has fewer restrictions. Originally released as version 2 with the GPL version 2 and called the GNU Library Public License, it was renamed 'Lesser' with the release of version 2.1.
Some additional facts regarding the license include:
- The Open Source Initiative (OSI) has approved this license as an Open Source license. Open Source approved licenses comply with the OSI criteria. Such criteria include provisions supporting both the free redistribution of aggregate and derived products, and the requirement that source code be made available with the distributions of aggregate and derivative products.
- The Free Software Foundation (FSF) has classified this license as a Free Software license. Free Software licenses meet the FSF's criteria for supporting the user's freedom to run, study, redistribute and improve the program.
- The GPL version 2 is not compatible with the GPL version 3. However, most software released under the GPL version 2 allows you to use the terms of a later version of the GPL license instead.
- This is a 'copyleft' license. Copyleft licenses - of which the GPL is the most commonly used - require any work originating in the licensed code to be made available under the same provisions.