The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or copyleft licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first copyleft license available for general use. It was originally written by Richard Stallman, the founder of the Free Software Foundation (FSF), for the GNU Project. The license grants the recipients of a computer program the rights of the Free Software Definition. The licenses in the GPL series are all copyleft licenses, which means that any derivative work must be distributed under the same or equivalent license terms. The GPL is more restrictive than the GNU Lesser General Public License, and it differs even more significantly from the more widely used permissive software licenses such as BSD, MIT, and Apache.
Historically, the GPL license family has been one of the most popular software licenses in the free and open-source software (FOSS) domain. Prominent free software programs licensed under the GPL include the Linux operating system kernel and the GNU Compiler Collection (GCC). David A. Wheeler argues that the copyleft provided by the GPL was crucial to the success of Linux-based systems, giving the contributing programmers some assurance that their work would benefit the world and remain free, rather than being potentially exploited by software companies who would not be required to contribute to the community.
In 2007, the third version of the license (GPLv3) was released to address perceived shortcomings in the second version (GPLv2) that had become apparent through long-term use.
To keep the license current, the GPL includes an optional "any later version" clause, which allows users to choose between two options—the original terms or the terms in new versions as updated by the FSF. Software projects licensed with the optional "or later" clause include the GNU Project, while projects such as the Linux kernel are licensed under GPLv2 only. The "or any later version" clause is sometimes known as a lifeboat clause, since it allows combinations of different versions of GPL-licensed software to maintain compatibility.
Usage of the GPL has steadily declined since the 2010s, particularly because of the complexities mentioned above, as well as a perception that the license restrains the modern open source domain from growth and commercialization.