LICENSEWARE

GNU Project licensing

This article is about the licenses under which the GNU Project releases its software and documentation (GPL, LGPL, AGPL, GFDL and the GCC Runtime Library Exception) and what they mean for businesses that run or redistribute GNU software. It is not legal advice.

On This Page

GNU Project licensing refers to the free software licenses under which the GNU Project releases its operating-system components, compilers, libraries and manuals. The GNU Project normally uses the GNU General Public License (GPL), “specifying version 3 or any later version”, and uses only GPL-compatible licenses for GNU software; documentation is normally released under the GNU Free Documentation License (GFDL).[9] The licenses are written and published by the Free Software Foundation (FSF), which also holds the copyright in many GNU packages.[17] None of the licenses charges a fee or counts users, devices or processors. For software asset management (SAM), the relevant question is not how many licenses an organization needs but which conditions apply when it copies, modifies or distributes the software.

The GNU C Library provides the core libraries for GNU/Linux systems and many other systems that use Linux as the kernel.[22] Other widely deployed packages include GNU Bash, GNU Coreutils and the GNU Compiler Collection (GCC), which are licensed under GPL version 3 or later,[12][13][14] and the GNU C Library (glibc), which is licensed under the GNU Lesser General Public License.[15]

Editions

The GNU Project does not sell editions. The equivalent of an edition is the license and license version attached to each package. Each license is published in a numbered version, and a program’s notice states whether it may be used under that version only or under that version “or any later version”.[1]

License Latest version Used for Copyleft scope 
GNU General Public License (GPL) 3 (2007-06-29); version 2 dates from June 1991 Most GNU programs, including Bash, Coreutils and GCC Whole program, including modified versions and works based on it 
GNU Lesser General Public License (LGPL) 3 (2007-06-29); version 2.1 dates from February 1999 Some GNU libraries, including glibc The library itself; programs that link to it may use other terms 
GNU Affero General Public License (AGPL) 3 (2007-11-19) Software commonly run over a network As GPL, plus source offer to remote network users 
GNU Free Documentation License (GFDL) 1.3 (2008-11-03) Manuals and documentation The document and modified versions 
GCC Runtime Library Exception 3.1 (2009-03-31) GCC runtime libraries and headers Additional permission under GPLv3 section 7 

Sources: GNU Licenses page,[9] license texts.[1][2][3][4][5][6][7]

LGPLv3 is written as GPLv3 “supplemented by the additional permissions listed below”, so a package under LGPLv3 is distributed with copies of both licenses.[3][8] The Software Package Data Exchange (SPDX) license list separates the two choices with distinct identifiers, for example GPL-3.0-only and GPL-3.0-or-later, and the license notice in each file states which one applies.[20] The Open Source Initiative approved GPLv3 on 2007-09-05 and lists the FSF as its steward.[21]

GPLv2 and GPLv3 are not compatible with each other. Code released under “GPLv2 or later” can be combined with GPLv3 code, but code released under GPLv2 only cannot.[8] Inventories therefore need to record the exact identifier, not just “GPL”. See the version rule.

Metrics

There are no license metrics. The GPL “explicitly affirms your unlimited permission to run the unmodified Program”, and acceptance of the license is not required to receive or run a copy.[1] The FSF’s definition of free software requires that a program be available “for commercial use, commercial development, and commercial distribution”.[10] See Running unmodified GNU software is unrestricted.

Counting / floors

Nothing is counted and there are no floors. Obligations depend on the activity, not on quantity:

  • Running and internal use. Covered works that are not conveyed may be made, run and propagated “without conditions so long as your license otherwise remains in force”.[1] According to the FSF, an organization may modify a GPL program and use it internally without ever releasing it, and making copies within one organization is not distribution.[8] See Internal use and private modification.
  • Transfers outside the organization. Transferring copies to other organizations or individuals is distribution; “providing copies to contractors for use off-site is distribution.”[8] See Providing copies to contractors.
  • Distribution of binaries. Distributing object code requires providing the corresponding source code, keeping notices and passing on the license, as described under Redistribution obligations below.

The only quantity threshold in the GNU licenses is in the GFDL: publishing more than 100 printed copies of a document adds cover-text duties, and publishing more than 100 opaque copies requires a transparent copy or a download location.[6]

Virtualization & partitioning

The licenses do not refer to virtual machines, partitions or cores, because no use is counted.[1] Copying GNU software into virtual machine images, containers or clusters that remain inside the organization is covered by the permission to propagate works that are not conveyed.[1] Handing those images to a customer or another company is distribution and brings the redistribution obligations into force.[8]

Cloud / BYOL

There is no bring-your-own-license concept. Running GPL software on a server and letting people use it over a network is not distribution under the GPL, so a company running a modified GPL program on a web site does not have to release its modified source.[8] The AGPL closes that gap: a modified AGPL program must offer its source to “all users interacting with it remotely through a computer network”.[5] See Network-served modified AGPL software and GNU GPL, LGPL and AGPL obligations.

Programs

The GNU Project does not sell subscriptions, support contracts or commercial licenses for its software. The GNU Project encourages redistributors to charge “as much as they wish or can” for copies,[11] and the GPL lets a distributor charge any price for a copy and “offer support or warranty protection for a fee”.[1] Two FSF offerings are recorded in the catalog:

Redistribution obligations

The conditions that matter in practice apply when software is conveyed (distributed) to someone else:

  • Source code. Under GPLv2, binaries must be accompanied by the complete source code or by a written offer “valid for at least three years” to provide it.[2] Under GPLv3, object code may be conveyed only if the Corresponding Source is also conveyed in one of the ways listed in section 6.[1] See GPL-2.0 §3 and GPL-3.0 §6.
  • Notices. Distributors must keep copyright, license and warranty-disclaimer notices intact and give recipients a copy of the license.[1] See the notices rule.
  • Copyleft scope. A modified version must carry notices of modification and be licensed “as a whole” under the GPL to anyone who receives it.[1] Putting a GPL program on the same medium as unrelated programs (an aggregate) does not extend the GPL to them.[1][8] See Modified versions and Aggregation.
  • Linking. In the FSF’s view, linking a GPL work statically or dynamically with other modules creates a combined work covered as a whole by the GPL.[8] The LGPL instead allows a program that links to the library to be distributed under the distributor’s own terms if users can modify the library and relink.[3][4] See Linking with GPL code and LGPL linking.
  • No extra restrictions. A distributor “may not impose a license fee, royalty, or other charge for exercise of rights granted under this License”.[1] The FSF states that a device that stops working unless a subscription is paid violates the GPL.[8] See Copies may be sold.
  • Devices and patents. GPLv3 requires “Installation Information” for consumer User Products, which the FSF presents as a response to “tivoization”, and grants a royalty-free patent license from each contributor.[1][8] See Installation Information and Patent license.
  • Termination. GPLv2 terminates rights automatically on violation. GPLv3 reinstates them if the violation stops, and permanently if a first violation is cured within 30 days of notice.[1][2] See Termination.

Trademarks

The GPL grants copyright and patent permissions. GPLv3 section 7(e) lets a licensor add a term “declining to grant rights under trademark law for use of some trade names, trademarks, or service marks”.[1] The GNU Project’s own trademark policy could not be retrieved for this article, so it is not summarized here. See the trademark rule.

Third-party components

GNU packages can include code from other copyright holders under other licenses. The GNU C Library’s LICENSES file collects notices for code from 4.4 BSD, the BIND resolver and other sources, and states that these notices must be “distributed with binary distributions of the code”.[16] GNU manuals are usually under the GFDL rather than the GPL. The Coreutils README, for example, is licensed under GFDL 1.3 or any later version.[24] GCC’s runtime libraries carry the GCC Runtime Library Exception, whose stated purpose is to allow “non-GPL (including proprietary) programs” to use them.[7] These cases are covered in GNU toolchain and C library licensing.

Audits and compliance

The GNU Project does not audit users. The FSF enforces the licenses on packages it holds the copyright for, such as GNU Bash, and says it does not seek monetary damages: “we only want violators to come back into compliance”. Its cases start from public reports.[18] See FSF enforcement.

Software asset management practice

The following is commentary on applying the cited documents:

  • Discovery. Identify GNU packages from package-manager metadata and from the license notices in source files, recording SPDX identifiers such as GPL-3.0-or-later or LGPL-2.1-or-later rather than a generic “GPL”.[20]
  • Classify use. Separate internal use, where the licenses impose no conditions on works that are not conveyed,[1] from distribution to customers, contractors or affiliates, where source, notice and copyleft obligations apply.[8] Network services built on modified AGPL code form a third category.[5]
  • Version and end-of-life tracking. glibc releases every six months, with 2.44 released on 2026-07-25.[22] GCC lists its supported release branches on its home page, where 16.2 was released on 2026-08-07.[23] See the release rule.
  • Distribution evidence. For products, appliances and container images shipped to others, keep the corresponding source, the license texts and third-party notices for each release, and keep written source offers valid for their stated period.[1][2][16]

Out of scope

This article does not cover the kernel Linux, which the FSF distinguishes from GNU,[8] or Linux distribution subscriptions such as Red Hat Enterprise Linux. It also does not cover non-GNU software distributed under GNU licenses, trademark licensing of the GNU name and logo, or the FSF’s copyright-assignment process for contributors.

References

  1. GNU General Public License, version 3§2 basic permissions; §4 verbatim copies; §5 modified versions; §6 non-source forms; §7 additional terms; §8 termination; §10 downstream recipients; §11 patents; §14 revised versions.Effective 2007-06-29. Retrieved 2026-09-27.
  2. GNU General Public License, version 2Version 2, June 1991. §2 modified works; §3 object code distribution; §4 termination.Retrieved 2026-09-27.
  3. GNU Lesser General Public License, version 3Additional permissions on top of GPLv3; §4 Combined Works.Effective 2007-06-29. Retrieved 2026-09-27.
  4. GNU Lesser General Public License, version 2.1Version 2.1, February 1999. §6 works that use the Library.Retrieved 2026-09-27.
  5. GNU Affero General Public License, version 3§13 Remote Network Interaction.Effective 2007-11-19. Retrieved 2026-09-27.
  6. GNU Free Documentation License, version 1.3§2 verbatim copying; §3 copying in quantity.Effective 2008-11-03. Retrieved 2026-09-27.
  7. GCC Runtime Library Exception, version 3.1Effective 2009-03-31. Retrieved 2026-09-27.
  8. Frequently Asked Questions about the GNU LicensesFSF interpretation. Entries #InternalDistribution, #GPLRequireSourcePostedPublic, #DoesTheGPLAllowMoney, #SubscriptionFee, #v2v3Compatibility, #Tivoization, #MereAggregation.Retrieved 2026-09-27.
  9. GNU LicensesRetrieved 2026-09-27.
  10. What is Free Software? (The Free Software Definition)Retrieved 2026-09-27.
  11. Selling Free SoftwareRetrieved 2026-09-27.
  12. GNU BashLicensing section.Retrieved 2026-09-27.
  13. GNU Coreutils source file header (src/ls.c)License notice: GPL version 3 or later.Retrieved 2026-09-27.
  14. GCC source file header (gcc/gcc.cc)License notice: GPL version 3 or later.Retrieved 2026-09-27.
  15. The GNU C LibraryLicensing section.Retrieved 2026-09-27.
  16. GNU C Library LICENSES fileRetrieved 2026-09-27.
  17. FSF Licensing & Compliance TeamRetrieved 2026-09-27.
  18. License Violations and ComplianceRetrieved 2026-09-27.
  19. Free Software Service DirectoryRetrieved 2026-09-27.
  20. SPDX License List: GNU General Public License v3.0 or laterRetrieved 2026-09-27.
  21. Open Source Initiative: GNU General Public License version 3Approved 2007-09-05.Retrieved 2026-09-27.
  22. The GNU C Library (glibc) project siteRetrieved 2026-09-27.
  23. GCC, the GNU Compiler CollectionRetrieved 2026-09-27.
  24. GNU Coreutils READMERetrieved 2026-09-27.

See also

Catalog Rows Cited

20Rules2Programs

Esc