LLMpediaThe first transparent, open encyclopedia generated by LLMs

GNU Affero General Public License

Generated by DeepSeek V3.2
Note: This article was automatically generated by a large language model (LLM) from purely parametric knowledge (no retrieval). It may contain inaccuracies or hallucinations. This encyclopedia is part of a research project currently under review.
Article Genealogy
Parent: Logseq Hop 4
Expansion Funnel Raw 41 → Dedup 23 → NER 15 → Enqueued 15
1. Extracted41
2. After dedup23 (None)
3. After NER15 (None)
Rejected: 8 (not NE: 8)
4. Enqueued15 (None)
GNU Affero General Public License
NameGNU Affero General Public License
AuthorFree Software Foundation
PublisherFree Software Foundation
Published19 November 2007
Dfdgcompatible
Websitehttps://www.gnu.org/licenses/agpl-3.0.html

GNU Affero General Public License. The GNU Affero General Public License is a strong copyleft license published by the Free Software Foundation and based on the GNU General Public License. It is specifically designed to ensure that users interacting with modified software over a computer network receive the source code, addressing a perceived loophole in the original GPL. This license is a critical tool for projects like Mastodon and Nextcloud that operate as network services, ensuring the preservation of user freedoms in the age of cloud computing.

History and development

The license was created to close the "Application service provider loophole," where software could be modified and run as a service without releasing the source code, a scenario not covered by the GPLv2. The initial version, known as the Affero General Public License, was drafted by Henry Poole's firm Affero, Inc. for its GNU-based project. The Free Software Foundation later adopted and refined these concepts, incorporating them into the third version of the GPL to create the official AGPLv3. This development was part of a broader revision process for the GPL family that involved extensive discussions within the free software community and consultations with stakeholders like the Software Freedom Law Center.

Key terms and conditions

Like its parent license, the GPLv3, it grants users the freedoms to use, study, share, and modify the software. Its most distinctive clause requires that if you run a modified program on a server and let other users communicate with it there, you must make the corresponding source code available to those users. This provision applies to software accessed over a network, such as through a web application or an API. The license also includes explicit patent retaliation clauses, protection against tivoization through user installation information, and compatibility with additional terms under section 7. It mandates that the complete corresponding source code be provided, including any scripts used to control compilation and installation.

Comparison with other licenses

Compared to the standard GPLv3, the primary difference is the expanded network use condition. While both are strong copyleft licenses, the GPL primarily governs distribution of copies, whereas this license governs both distribution and remote interaction. It is more restrictive than permissive licenses like the Apache License or the MIT License, which impose minimal conditions. It also differs from weak copyleft licenses like the LGPL, which permits linking with proprietary software under certain conditions. Other network-oriented licenses, such as the Server Side Public License from MongoDB Inc., were created later with similar goals but are not considered free software licenses by the Free Software Foundation.

Use cases and adoption

It is widely adopted by software projects that are primarily deployed as network services. Prominent examples include the decentralized social networking platform Mastodon, the file synchronization and sharing software Nextcloud, and the document collaboration suite OnlyOffice. Many database and development platforms, such as MongoDB (prior to its license change) and the CouchDB-based Hyperledger Fabric, have utilized it. The license is favored by commercial open-source companies like GitLab (for its Community Edition) and SugarCRM for certain editions, as it ensures that service providers contribute improvements back to the community. Its use is particularly common in projects within the European Union that emphasize digital sovereignty.

Compatibility and linking

The license is explicitly compatible with the GPLv3; code under it can be combined with code under GPLv3, as the additional terms are considered a permitted additional restriction under section 7 of GPLv3. However, combining it with works under the older GPLv2 is not permitted due to version incompatibility. The rules for linking are identical to those of the GPLv3: dynamically or statically linking modules creates a single combined work, which must then be licensed as a whole under its terms. This differs from the LGPL, which allows linking with proprietary modules. Projects like the GNU Project's GNU Taler use it while ensuring all components are compatible.

Version 3 revisions

The third version, released by the Free Software Foundation in November 2007, was developed concurrently with the GPLv3. Key revisions included harmonizing its text with GPLv3, strengthening internationalization, and adding explicit language about network interaction. It incorporated new provisions from GPLv3 addressing DRM and tivoization, patent clauses requiring contributors to grant a license to any patents they hold, and a mechanism to accept terms through propagation. The revision process involved a global public consultation, with comments from organizations like the Software Freedom Law Center and corporations such as IBM and Google, leading to drafts published on the FSF website before the final release.

Category:Free software licenses Category:GNU Project Category:Copyleft licenses