AGPL ist eine ziemlich neue Lizenz, die für GPL-over-Networks gedacht war. Da ich jedoch kein Anwalt bin und nicht die gesamte Lizenz gelesen habe, kann ich nicht verstehen, was genau Sie mit AGPL tun können und was nicht.
Meine Unsicherheit speist sich aus diesem Beitrag über MongoDB (das ist AGPL) und noch mehr aus den Kommentaren unten.
Wenn wir den Kommentaren folgen, stellt sich heraus, dass Sie AGPL-Bibliotheken mit Ihrer kommerziellen serverseitigen Closed-Source-Software verwenden können, solange Sie die Bibliothek nicht ändern. Ist das der Fall? Oder müssen Sie Ihre gesamte Anwendung verteilen, wenn Sie eine AGPL-lizenzierte Bibliothek verwenden?
Der Fall bei MongoDB ist, dass die Apache-Lizenz für den Client-Code verwendet wird, was eine andere Frage aufwirft. Was passiert, wenn Sie AGPL-Software verwenden, diese jedoch als andere Anwendung als Ihre kommerzielle Closed-Source-Anwendung bereitstellen? Nehmen Sie zum Beispiel iText - es ist eine AGPL-Bibliothek:
- Wenn Sie es verwenden und modifizieren, müssen Sie dann Ihre gesamte Anwendung als Open-Source-Version verwenden oder nur die Änderungen in iText weitergeben?
- Wenn Sie es verwenden und nicht ändern, müssen Sie dann Ihre gesamte Anwendung als Open-Source-Version bereitstellen?
- Wenn Sie iText in eine andere Anwendung einbinden, die Sie als separater Prozess starten, aber von Ihrer Hauptanwendung aus verwenden, sollten Sie dann alles als Open-Source-Version oder nur die Wrapper-Anwendung verwenden? (Die Wrapper-Anwendung ist eine HTTP-basierte API, die PDF-Dateien akzeptiert und die Ergebnisse der Verwendung von iText als JSON zurückgibt.) Kann damit die AGPL-Lizenz umgangen werden?
Hinweis: Die Frage bezieht sich auf AGPLv3
Antworten:
Die AGPL basiert auf der GPL, nicht auf der LGPL. Es enthält keine Verknüpfungsausnahmen, und Arbeiten mit AGPL-Code (verknüpft oder anderweitig geändert oder nicht geändert) müssen ebenfalls von AGPL lizenziert und verbreitet werden.
Durch die Verwendung separater Prozesse kann die (A) GPL umgangen werden, dies ist jedoch ein trüber Grund. Wenn Ihre Endanwendung vom externen Prozess abhängt , sodass sie ohne diesen nicht ordnungsgemäß funktioniert, wird sie als abgeleitete Arbeit der AGPL-Software betrachtet.
In den meisten Fällen, in denen Benutzer separate GPL-Anwendungen in Closed-Source-Programmen verwenden, stellen sie die GPL-Arbeit als optionale Erweiterung oder als alternatives Back-End für einen anderen Code usw. zur Verfügung.
Die (A) GPL-Arbeit kann nicht zusammen mit der endgültigen Anwendung als separate Anwendung verteilt werden (z. B. in dasselbe Archiv oder Repository stellen), obwohl es in Ordnung ist, Anweisungen zu geben, wo die GPL-Arbeit zu finden ist und wie man sie verwendet deine App.
quelle
main
besteht aus DFSG- kompatiblen Paketen, deren Betrieb nicht auf Software außerhalb dieses Bereichs angewiesen ist. Dies sind die einzigen Pakete, die als Teil der Debian-Distribution betrachtet werden .contrib
Pakete enthalten DFSG- konforme Software, haben jedoch keine Hauptabhängigkeiten (möglicherweise nicht kostenlos für Debian).non-free
Enthält Software, die nicht der DFSG entspricht .AGPL ist dasselbe wie GPL; Wenn Ihre App AGPL-Code verwendet, muss sie daher über eine AGPL-Lizenz verfügen.
Was AGPL zusätzlich zu GPL tut, ist die Neudefinition des Benutzers. Bei GPL-Programmen, die auf Ihrem Server ausgeführt werden, sind Sie der Benutzer. Bei AGPL sind die tatsächlichen Benutzer der App die Benutzer Ihrer Website oder Ihres Dienstes. Aus diesem Grund verteilen Sie die App, wenn eine andere Person als Sie sie verwendet. Und das impliziert natürlich alle Standardanforderungen der GPL.
Was Mongo betrifft, gehe ich davon aus, dass Apps, die es verwenden, keinen Code verwenden, sondern nur einige APIs, für die keine AGPL-Lizenz besteht.
quelle