The original GNU General Public License (GNU GPL), which Stallman wrote in 1989 to accompany the GNU operating system and related programs, put the concept of copyleft into explicit form. Since then, the GNU GPL has been updated several times. The latest version, GNU GPL v3, was released in 2007. Other copyleft licenses, like the Mozilla Public License 2.0 and the Eclipse Public License, have also gained traction in the OSS community. Currently, the most-used copyleft license in open source software is the GNU GPL v2, which has been in wide use for 20 years. It is certainly, the most important open source software license that comes with a “copyleft”.

The “copyleft” provision of the GPL stipulates that adaptations of software running under the GPL may in turn only be distributed under the validity of the GPL. This is intended to prevent the conversion of GPL code into proprietary code, i.e., to ensure that Free Software remains Free Software even after editing by a programmer.

To ensure this, § 4 p. 2 GPL sanctions a violation of the above obligations with an “automatic” termination of the user's rights under the GPL.

An impressive quote from the Free Software Foundation (FSF) on “copyleft”: “To copyleft a program, we first state that it is copyrighted; then we add distribution terms, which are a legal instrument that gives everyone the rights to use, modify, and redistribute the program's code or any program derived from it but only if the distribution terms are unchanged. Thus, the code and the freedoms become legally inseparable.”

Copyleft licenses come in two flavors: strong and weak. This distinction turns on how much new or adjacent code is subject to the copyleft license.

Under a strong copyleft license like GPL, if you redistribute a program that includes GPL code written by others, you must make your entire program available under GPL. That includes any linked libraries or other components of the program. Examples of licenses that fall into this category include GPL v2 and GPL v3, as well as the Affero GPL License (AGPL).

Weak copyleft licenses also obligate users to release their changes. However, this requirement applies to a narrower set of code. The Mozilla Public License 2.0 and the CDDL (Common Development and Distribution License) are examples of weak copyleft licenses that illustrate this principle. If a user keeps the licensed code in separate files, they can then combine it with additional and/or modified code to create an aggregate work. The newly added files may be released under a different license or kept proprietary (closed-source). This is sometimes referred to as file-based copyleft. Another example is the LGPL, which mainly applies to libraries. Any changes to the library must be released under the same license, but a work that simply uses the library is exempt.

The LGPL also has different requirements depending on how the library is integrated with the remainder of the program. For example, you may have heard that the LGPL requires the library to be dynamically linked. While it is possible to comply with the LGPL for a statically linked program, there are more requirements — so dynamic linking of LGPL code is a best practice.

It’s worth noting that copyleft licenses don’t exist solely within open source software. The Creative Commons (CC) license, for instance, is a copyleft license often applied to artistic works like photographs, music, etc.
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence