<!--#include virtual="/server/header.html" --> <!-- Parent-Version: 1.97 --> <!-- This page is derived from /server/standards/boilerplate.html --> <title>Why the GNU Affero GPL - GNU Project - Free SoftwareFoundation (FSF)</title>Foundation</title> <!--#include virtual="/licenses/po/why-affero-gpl.translist" --> <!--#include virtual="/server/banner.html" --> <div class="article reduced-width"> <h2>Why the Affero GPL</h2> <div class="thin"></div> <p>The GNU Affero General Public License is a modified version of the ordinary GNU GPL version 3. It has one added requirement: if you runthea modified program on a server and let other users communicate with it there, your server must also allow them to download the source code corresponding to theprogram that it's running. If what's running there is yourmodified versionof the program, the server's users must get the source code as you modified it.</p>running there.</p> <p>The purpose of the GNU Affero GPL is to prevent a problem that affects developers of free programs that are often used on servers.</p> <p>Suppose you develop and release a free program under the ordinary GNU GPL. If developer D modifies the program and releases it, the GPL requires him to distribute his version under the GPL too. Thus, if you get a copy of his version, you are free to incorporate some or all of his changes into your own version.</p> <p>But suppose the program is mainly useful on servers. When D modifies the program, he might very likely run it on his own server and never release copies. Then you would never get a copy of the source code of his version, so you would never have the chance to include his changes in your version. You may not like that outcome.</p> <p>Using the GNU Affero GPL avoids that outcome. If D runs his version on a server that everyone can use, you too can use it. Assuming he has followed the license requirement to let the server's users download the source code of his version, you can do so, and then you can incorporate his changes into your version. (If he hasn't followed it, you have your lawyer complain to him.)</p> <p>Both the ordinary GNU GPL, version 3, and the GNU Affero GPL have text allowing you to link together modules under these two licenses in one program.</p><!-- Added a link to rms' article here. If it can be improved, please do it! --> <p>One problem which the<p>The GNU Affero GPL does not addressisthe problem ofSoftware as a<a href="/philosophy/who-does-that-server-really-serve.html"> Service(SaaS). It is impossible,asfar as we know, to address this problem withasoftware license. <a href="/philosophy/who-does-that-server-really-serve.html"> [1] </a></p> <p>SaaSSoftware Substitute (SaaSS)</a>.</p> <p>SaaSS meansthethat users useof someone's network server, by others,someone else's web server to dowork which istheir own computing.They haveThis requires them to send their data to the server, which does their computing forthem,them and sends the results back to them.SaaSSaaSS isa probleman injustice because the users cannot controlthetheir computingwhich the server does for them.</p>when it's done that way.</p> <p>If some program on this server is released under the GNU Affero GPL,it requires thattheusers have a wayserver is required todownloadoffer the users the corresponding source of that program. That is good, but having this source code does not give them control over the computingthe server does for them.done on that server. It also does not tell them what other software may be running on that server, examining or changing their data in other ways.</p> <p>We don't see any sensible way to address the SaaSS problem with license conditions on particular programs. Even to write a legal condition to distinguish between SaaSS use and non-SaaSS use would be a challenge, and if we had that, we don't see anything that the program's license might require in the SaaSS case that would correct the inherent wrong of SaaSS. Thus, our solution to the problem of SaaSS is simple: refuse to use services that are SaaSS.</p> <p>If a program is meant specifically and only for SaaSS, you shouldn't write it. But many programs are useful for a variety of kinds of services, including some that are SaaSS and some that are not. It's useful to write and release these programs so people can set up non-SaaSS services with them, and good to release them under the AGPL.</p> </div> </div><!-- for id="content", starts in the include above --> <!--#include virtual="/server/footer.html" --> <divid="footer"> <p> Pleaseid="footer" role="contentinfo"> <div class="unprintable"> <p>Please send general FSF & GNU inquiries to <a href="mailto:gnu@gnu.org"><gnu@gnu.org></a>. There are also <a href="/contact/">other ways to contact</a> the FSF.<br /> Please send brokenBroken links and other corrections or suggestions can be sent to <ahref="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>. </p> <p>href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>.</p> <p><!-- TRANSLATORS: Ignore the original text in this paragraph, replace it with the translation of these two: We work hard and do our best to provide accurate, good quality translations. However, we are not exempt from imperfection. Please send your comments and general suggestions in this regard to <a href="mailto:web-translators@gnu.org"> <web-translators@gnu.org></a>.</p> <p>For information on coordinating and contributing translations of our web pages, see <a href="/server/standards/README.translations.html">Translations README</a>. --> Please see the <a href="/server/standards/README.translations.html">Translations README</a> for information on coordinating andsubmittingcontributing translations of this article.</p> </div> <!-- Regarding copyright, in general, standalone pages (as opposed to files generated as part of manuals) on the GNU web server should be under CC BY-ND 4.0. Please do NOT change or remove this without talking with the webmasters or licensing team first. Please make sure the copyright date is consistent with the document. For web pages, it is ok to list just the latest year the document was modified, or published. If you wish to list earlier years, that is ok too. Either "2001, 2002, 2003" or "2001-2003" are ok for specifying years, as long as each year in the range is in fact a copyrightable year, i.e., a year in which the document was published (including being publicly visible on the web or in a revision control system). There is more detail about copyright years in the GNU Maintainers Information document, www.gnu.org/prep/maintain. --> <p>Copyright ©20102010, 2013, 2015, 2022 Free Software Foundation, Inc.</p><p> This<p>This page is licensed under a <a rel="license"href="http://creativecommons.org/licenses/by-nd/3.0/us/">Creativehref="http://creativecommons.org/licenses/by-nd/4.0/">Creative CommonsAttribution-NoDerivs 3.0 United States License</a>. </p>Attribution-NoDerivatives 4.0 International License</a>.</p> <!--#include virtual="/server/bottom-notes.html" --><p>Updated:<p class="unprintable">Updated: <!-- timestamp start --> $Date: 2022/01/02 17:32:24 $ <!-- timestamp end --> </p> </div></div></div><!-- for class="inner", starts in the banner include --> </body> </html>