Wie wird clientseitiges Javascript von der GPL abgedeckt?

29

Wenn ich eine GPL-lizenzierte Javascript-Bibliothek in einer Webanwendung verwenden würde, müsste ich dann jedem, der die Javascript-Bibliothek heruntergeladen und ausgeführt hat, den Quellcode der gesamten Site anbieten?

Armand
quelle
5
Das ist eine sehr interessante Frage. In der Regel werden Webanwendungen nicht von der GPL abgedeckt, da Sie den Code nicht verteilen (weshalb es die AGPL gibt). Bei Code, der im Browser ausgeführt wird, wird der Code jedoch sozusagen verteilt. In diesem Fall bedeutet die Natur der GPL, dass Ihre gesamte Webanwendung unter der GPL veröffentlicht werden muss.
Scott Whitlock
5
@David - Die Frage ist, ob die GPL Sie zwingt, auch den Rest Ihrer Webanwendung (wie das serverseitige Material) freizugeben . Sie haben die Javascript-Bibliothek verwendet, um eine abgeleitete Arbeit zu erstellen. Die GPL würde für das gesamte Ergebnis gelten.
Scott Whitlock
1
@ David, wenn es klar wäre, hätte ich nicht gefragt: p
Armand
1
@Alison, ah OK, sorry, ich habe dann die ganze Frage falsch verstanden. Nein, die Serverseite müsste nicht GPLed sein. Solange die Kommunikation zwischen Client und Server ein anderes Format aufweist als ein Funktionsaufruf auf Maschinenebene, wie z. B. XML, müssen Sie sich keine Sorgen machen. Das einfache Bereitstellen von GPL-Code, sei es HTML oder JS, führt nicht dazu, dass der serverseitige Code ihn bereitstellt oder in einem nicht-entfernten Aufrufformat mit ihm kommuniziert.
David
1
Richard Stallman, Autor der GPL, zum Thema: gnu.org/philosophy/javascript-trap.html
Honza Pokorny

Antworten:

5

Sie müssten das JavaScript dieser Bibliothek und das JavaScript der Anwendung anbieten, die auf die API dieser Bibliothek zugreift (und alle anderen Bibliotheken, auf die die Anwendung zugreift, für die ebenfalls eine GPL-kompatible Lizenz erforderlich ist).

Denken Sie daran, dass Sie das für Menschen lesbare JavaScript bereitstellen müssen, nicht eine Version ohne Leerzeichen, wie sie normalerweise in der Produktion eingesetzt wird.

Der HTML-Code, der das JavaScript aufruft, ist bereits eindeutig verfügbar. Er gilt nicht als "Verknüpfung" mit diesem JavaScript und seine Verfügbarkeit bedeutet, dass sich die Leute wahrscheinlich keine Sorgen machen müssen.

David
quelle
3
Ich denke nicht, dass das Verknüpfen der einzige Auslöser ist. Wenn Ihr Programm beispielsweise so von einer anderen Hilfsprogrammanwendung abhängt, dass Ihre Anwendung ohne die andere Bibliothek nicht funktionieren kann, dann ist für die Zwecke der GPL alles eine Anwendung. Ich denke, in diesem Fall würde ich empfehlen, einen Anwalt zu konsultieren.
Scott Whitlock
es muss lesbar sein? Interessant. Ich werde dies als separate Frage stellen.
Armand
Es muss unverändert bleiben, sowohl in GPL V2 als auch in V3. OK, das ist vielleicht nicht dasselbe, ich gehe davon aus, dass der Mensch schreibbar == vom Menschen lesbar ist.
David
1
Hier als separate Frage gepostet: programmers.stackexchange.com/questions/62885/…
Armand
@ScottWhitlock Im Sinne des Gesetzes ist es nur wichtig, ob eines aus urheberrechtlicher Sicht ein Derivat des anderen ist, nicht, ob eines ohne das andere funktionieren kann. Wenn das Urheberrecht nicht gilt, hat die GPL (bei der es sich um eine Lizenz handelt, nicht um einen Vertrag, also nur um das Erteilen und Nichtentziehen von Berechtigungen) keine Auswirkungen. Es wäre sehr schwierig zu zeigen, welcher Server und welcher Client in einer typischen Web-App vom anderen abgeleitet ist, wenn überhaupt. Ich würde sagen, es ist wahrscheinlicher, dass der Client vom Server abgeleitet ist, da die meisten Entwickler normalerweise Server als Client schreiben, aber das ist weit von Uniform entfernt.
Jules