The GNU General Public License(GNU GPL or GPL) is a free software license created by Richard Stallman, who founded the Free Software Foundation(FSF). This license ensures that every end user gets the essential freedoms that define free software, i.e., end users can use, share, and modify the software without paying any charges.
All the GNU GPL licenses are copyleft licenses, meaning anyone can make changes, extend the source code, and redistribute it as long as the changes are clearly marked. The essential thing here is that the modified software must also be licensed under the General Public License.
GPL licenses are one of the most popular software licenses for free and open-source software(FOSS), as about 70% of them are released under this license.
Contents
GNU General Public License Versions
Three versions of the GNU General Public License have been released since its inception in 1989. There have been significant adjustments in the license terms with each subsequent version.
What is General Public License Version 1?
Version 1 of the General Public License was released in 1989 and was based on similar free software licenses used by early versions of GNU Emacs. However, these existing licenses, such as the GNU Debugger and the GNU C Compiler, were tailored to each program, making them non-compliant.
Therefore, GPL version 1’s goal was to develop one license that could be used for any project. It states that while copying and distributing copies of any part of a program, the human-readable source code also has to be made available under the same licensing terms.
What is General Public License Version 2?
This version of the General Public License was released in 1991 and contained the “Liberty or Death” clause(section 7). It has a disclaimer stating that licensees can distribute any GPL-covered work only if they can satisfy all the license obligations, regardless of any other legal obligations they might have.
This has been done to discourage any party from impairing users’ freedom under the GPL license on the grounds of patent infringement claims or any other litigation.
What is General Public License Version 3?
The latest version of the General Public License was released in 2007 after four drafts were published for public consultation.
General Public License version 3 mainly includes important changes related to software patents, free software license compatibility, and hardware restrictions on software modifications like tivoization.
Some changes regarding internationalization, handling of license violations, and additional permissions for copyright holders have also been introduced.
What is Lesser GNU General Public License?
The Lesser GNU General Public License(LGPL) is a license for open-source software that allows linking with non-free software. This license generally does less to protect the users’ freedom than the regular GNU GPL. It provides fewer standards for source code analysis but still has transparency and attribution requirements.
In other words, the LGPL straddles the line between strong copyleft licenses like the regular GPLs and permissive ones like the MIT and BSD licenses. The Lesser General Public License is usually applied to libraries and does not permit sublicensing of the code.