The international validity of most common licenses is guaranteed by copyright law, and in particular by the [Copyright Treaty](https://en.wikipedia.org/wiki/WIPO_Copyright_Treaty)
of the United Nations' (UN) World Intellectual Property Organization (WIPO) adopted in 1996.
This treaty sets a common denominator for all adhering countries, but individual countries can still extend domestically
Free software licenses are licenses which respect the [four fundamental software freedoms](https://www.gnu.org/philosophy/free-sw.en.html#four-freedoms)
Both copyleft and permissive license may, or may not, be free licenses. For example, the [Modified BSD license](https://www.gnu.org/licenses/license-list.en.html#ModifiedBSD)
Some permissive/temporarily-open licenses like the Apache-2.0 license contain a patent provision explicitly granting the
users the right to use their patents. Some, like the BSD 3-Clause Clear license explicitly do not grant the right to use
their patents. And some, like the MIT license, do not mention patents, making it arguable that they [implicitly grant](https://opensource.com/article/18/3/patent-grant-mit-license)
patent rights, or that they [do not](https://web.archive.org/web/20190312190935/http://stlr.org/2018/10/15/the-truth-about-oss-frand-by-all-indications-compatible-models-in-standards-settings/).
We recommend that you use a license with a clear statement so your users know your specific intent.
For further information on "patents and free software", head over to [this Wikipedia article](https://en.wikipedia.org/wiki/Software_patents_and_free_software).
Over the years, hundreds of different software/artwork licenses have been written, used and abandoned.
This causes a big harm to the Free and Open Source community because it makes it more difficult for everybody to
understand their meaning and compatibility between them.
A common reaction of developers is to refuse discussions about licenses or their use altogether.
Rather than dispersing efforts in a multitude of isolated and incompatible efforts ([license proliferation](https://en.wikipedia.org/wiki/License_proliferation)),
we recommend using whenever possible only the mainstream licenses as highlighted in this page.
For more information on license compatibility, we recommend the commented [license list curated by the GNU project](https://www.gnu.org/licenses/license-list.html).
For software projects, we recommend whenever possible to utilize a copyleft license.
The only well-established licenses of this type are those of the GNU General Public License (GPL) family.
The GPL licenses have evolved over time and come with different versions. Unfortunately, some versions are not
compatible with older ones.
To avoid [license proliferation](#license-proliferation) and to ease compatibility with future versions, we recommend
using the "GNU Affero General Public License v3.0 or later" with SPDX license identifier ["AGPL-3.0-or-later"](https://spdx.org/licenses/AGPL-3.0-or-later.html).
The AGPL provides the maximum openness of the code: Even when the software runs on a server, users who interact with
that software (e.g. over a network connection) are entitled to receive a copy of the source code.
The [Affero GPL v3.0](https://www.gnu.org/licenses/agpl-3.0.en.html) is compatible with the [GPL v3.0](https://www.gnu.org/licenses/gpl-3.0.en.html)
and vice-versa thanks to article 13 in each license.
If using AGPL-3.0-or-later is not an option, we recommend using another license of the GNU family, such as the General
Public License (GPL), or the Lesser General Public License (LGPL), always indicating the version "**v3.0 or later**".
In some cases, such as when writing certain libraries, using the Lesser General Public License (LGPL) may lead to a
broader usage. In such cases, the [LGPL is preferred over the (A)GPL](https://www.gnu.org/licenses/gpl-faq.en.html#WhySomeGPLAndNotLGPL).
For software which is not very long (e.g. less than 300 lines of code) or unimportant, rather than using a copyleft
license you may consider using a [lax permissive license instead](https://www.gnu.org/licenses/gpl-faq.en.html#WhatIfWorkIsShort).
If you are not allowed to, or if you do not want to use a forever-open license (for example because the company you work
for does not allow you to do so) we recommend using a temporarily-open or permissive (in the sense that it permits users
to close source the code) license which contains a patent provision. To avoid [proliferation of licenses](#license-proliferation),
we recommend therefore to use the Apache license version 2.0 (SPDX license identifier Apache-2.0).
We recommend following the guidelines defined by the [GNU project](https://www.gnu.org/licenses/licenses.html).
Like CC themselves, Codeberg **recommends against** using a [CC license on code](https://creativecommons.org/faq/#can-i-apply-a-creative-commons-license-to-software),
- [Licensing and Compliance Lab: The most frequently asked Frequently Asked Questions](https://www.fsf.org/blogs/licensing/licensing-and-compliance-lab-the-most-frequently-asked-frequently-asked-questions)