2011/9/27 Andreas K. Foerster list@akfoerster.de:
On Mon, Sep 26, 2011 at 09:58:35PM +0200, Andreas K. Foerster wrote:
On Mon, Sep 26, 2011 at 09:45:03PM +0200, Nicolas Barbier wrote:
Ich habe den Eindruck, dass du glaubst, die normale GPL-Bedingungen würden nicht gelten wenn der Code (oder eine in Javascript umgewandelte Version davon) zum Webbrowser geschickt würde. Wie immer braucht man dann die Möglichkeit zu haben, den Code zu bekommen.
Okay, stimmt, du hast Recht was emscripten und Native Client anbelangt. Da scheint die normale GPL zu greifen und auszureichen.
Vielleicht bin ich jetzt zu früh eingecknickt. Zwar bin ich selber da deiner Meinung, dass die normale GPL da greift, ich könnte mir aber auch eine Gegenargumentation vorstellen: Das Programm geht ja nicht in den Besitz des Anwenders über, es wird nicht auf die Festplatte kopiert, sondern es wird nur flüchtig (temporär) vorgehalten...
Ich glaube, der Server-Betreiber habe nicht das Recht, es an den Benutzer zu schicken, ohne den Code auch anzubieten. GPLv3:
----8<---- To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.
[..]
You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: ---->8----
Der erste Absatz scheint mir zu sagen, dass „conveying“ das Schicken einer Kopie einschließt (ob diese nun gespeichert wird oder nicht). Der zweite Absatz sagt, dass die Bedingungen bezüglich des Bereitstellens des Source Codes eingehalten werden müssen.
(Es gibt bestimmte Ausnahmen bezüglich „make modifications exclusively for you“ und „provide you with facilities for running“ (siehe „2. Basic Permissions“), wovon ich aber glaube, dass sie hier nicht zutreffen.)
[..]
Mittlerweile ist mir ein weiteres Beispiel eingefallen: Man könnte eine Anwendung per VNC anbieten. Dabei wird das Programm selber auch nicht übertragen. Es funktioniert aber mit jeder Desktop-Anwendung. (Randnotiz: SDL scheint mit VNC Probleme zu haben. Weiß da jemand genaueres?)
Technisch ist das Problem sicher nichts neues. Schon mit Telnet war sowas ähnliches möglich. Neu hingegen ist, dass "Software as a Service" (SaaS) als mögliches Geschäftsmodell wahrgenommen wird.
Wie gesagt, mir geht es hier aber eher um die Abwehr eines solchen potentiellen Problemes. Die AGPL für alles zu verwenden, wäre da ein Ansatz.
Das könnte vielleicht funktionieren, vor allem weil seit (A)GPL v3, AGPL Anwendungen GPL Code einbinden dürfen. Es würde nicht lange dauern, bevor alle einst-GPL Software AGPL ist.
Die frage, die ich mir stelle ist: Will man eine Situation schaffen, wo man keinerlei private Änderungen an jegliche Netzwerk-Anwendungen (die nur auf dem eigenen Rechner laufen) machen darf, ohne sie den Benutzern zwangsmäßig zeigen zu müssen? Vielleicht ist da das Mittel schlimmer als die (für „normale“ Anwendungen noch ziemlich hypothetische) Qual.
Nicolas