111

What is the difference between the Affero General Public License and the GNU General Public License (GPL)?

durron597
  • 31,968
  • 17
  • 99
  • 158
thr
  • 19,160
  • 23
  • 93
  • 130
  • 1
    http://en.wikipedia.org/wiki/Affero_General_Public_License – Mirko N. Jan 24 '10 at 13:47
  • 1
    http://programmers.stackexchange.com/questions/131264/what-constitutes-distributing-for-lgpl-v3 – Ciro Santilli OurBigBook.com Jun 30 '15 at 12:58
  • 3
    @MikeWilliamson there is pretty significant community consensus on meta that these questions are off-topic -- you can read more and join the discussion [here](http://meta.stackoverflow.com/questions/295117/this-tag-should-not-be-legal) and [here](http://meta.stackoverflow.com/questions/280151/how-do-we-handle-ethical-legal-questions) and [here](http://meta.stackoverflow.com/questions/272705/does-a-question-about-a-programming-lawsuit-belong-on-stack-overflow-or-its-lega) and [here](http://meta.stackoverflow.com/q/288222/3093387). – josliber Aug 13 '15 at 00:09
  • The affrero AGPL should rather be compared to the GNU AGPL version 3 https://www.gnu.org/licenses/quick-guide-gplv3.en.html – user1767316 Aug 23 '18 at 10:23
  • The affero.org domain no longer serves licensing content. Please link to https://www.gnu.org/licenses/agpl-3.0.html – a1300 May 31 '21 at 13:24

2 Answers2

75

Assume the following:

You are developing a server side application in GPL. Now this application serves HTML and not an executable which is directly executed on your machine. That means that another guy could take the GPL code, adapt it and does not necessarily need to publish it. Ie. he can create the identical service using your software without violating the GPL. (Although THEN he cannot publish the software itself i.e. selling)

Not so with the AGPL.

This hole in the GPL is often called "Application Service Provider" hole.

Search for "Why AGPL" or "AGPL vs. GPL" or just read this for some real projects who have problems with GPL. The MongoDB tries another interesing thing. They want that people do not fork the core DB (thatwhy AGPL) but the driver which has to be linked with the main program is apache 2.0 licensed so that the mongoDB could be used within commercial application.

Public web application that uses the AGPL are listed at wikipedia.

William Desportes
  • 1,412
  • 1
  • 22
  • 31
Karussell
  • 17,085
  • 16
  • 97
  • 197
  • I thought GPL allowed you to sell the software or a modified version of the software as long as you make it GPL too. Is that not the case? – conradkleinespel Sep 01 '14 at 20:03
  • @conradk yes, sure you can sell but the example was about using the software hidden behind a service. I will rephrase to 'Although THEN he cannot publish the software itself (i.e. selling)' – Karussell Sep 02 '14 at 08:21
  • I'm sorry, but I disagree again. He can sell it, as long as it is licensed under GPL. Well, that's how I understand the license. No? – conradkleinespel Sep 02 '14 at 10:40
  • I do not explain the 'selling' here, I explain that for this guy it would be possible to use the GPL code in his closed source service WITHOUT violating the license and WITHOUT the necessity to publish the code. This might not be intented from the original author. – Karussell Sep 02 '14 at 10:47
  • 2
    I think that sentence is very confusing. What does "Although then he cannot publish the software itself" mean? – conradkleinespel Sep 02 '14 at 11:44
  • 1
    @conradk, it means "he cannot publish the software itself, if he wants to keep it closed source." (but he still can use it server side). – Syed Lavasani Oct 31 '14 at 15:04
  • @SyedLavasani: That is more clear indeed. Thanks. Because he can publish it under AGPL terms and sell it, I think. – conradkleinespel Nov 01 '14 at 15:10
28

See http://www.gnu.org/licenses/licenses.html#AGPL

The GNU Affero General Public License is based on the GNU GPL, but has an additional term to allow users who interact with the licensed software over a network to receive the source for that program. We recommend that people consider using the GNU AGPL for any software which will commonly be run over a network.

Jan Rüegg
  • 9,587
  • 8
  • 63
  • 105