[linux-l] GPLv3 erschienen

olafBuddenhagen at gmx.net olafBuddenhagen at gmx.net
Di Jul 10 04:50:37 CEST 2007


Hallo,

On Fri, Jul 06, 2007 at 12:30:19AM +0200, Steffen Dettmer wrote:
> * olafBuddenhagen at gmx.net wrote on Mon, Jul 02, 2007 at 16:25 +0200:

> > Weiß nicht was Du meinst. Wenn "v2 or later" dran steht, hat jeder
> > das Recht eine Variante zu verbreiten die nur noch v3 ist.
> 
> Na ja, eben ja nicht, weil er NUTZER sich ja auch v2 aussuchen kann.

Die GPL bezieht sich nicht wirklich auf Nutzer: Solange man GPL-Software
nur *benutzt*, gibt es keinerlei Einschränkungen. Die GPL greift erst,
wenn man die Software (modifiziert oder auch unmodifiziert)
weiterverbreiten will: Es wird geregelt, unter welchen Bedingungen das
geschehen darf -- welche Rechte und Pflichten man dem *Empfänger* geben
muss.

Das gilt auch für die "v2 or later"-Klausel: Derjenige, der die Software
*weitergibt*, kann entscheiden, unter welcher Version er das tut -- v2
only oder v3 only oder v2 or later oder v3 or later, alles drin. Falls
die Weitergabe unter v3 erfolgt, hat der Empfänger dann keine Wahl mehr;
die v2-Option ist weg.

Das bringt natürlich nicht viel bei unmodifizierten Versionen -- wer
will könnte vermutlich wo anders immer noch die ursprüngliche Variante
mit "v2 or later" finden. Bei tatsächlich neuen Versionen ist es
hingegen durchaus sinnvoll, sie nur noch unter v3 zu veröffentlichen, so
dass die neuen Bedingungen bindend sind.

> Das muss ja so bleiben, so lange v2 Teile drin sind (bzw. einer der
> Entwickler oder Contributors eventuell auf v2 besteht) - oder?

Wie gesagt nur wenn Teile drin sind, die v2-only sind. Mit "v2 or later"
ist die Erlaubnis, auf eine neue Version umzustellen, bereits gegeben.

> > Wenn Du einen Patch verbreitest für ein Projekt was "v2 or later"
> > ist, ohne an dem Linzenzstatus explizit was zu tun, gilt die Klausel
> > auch für Deinen Patch. Wenn Du das vermeiden willst, müsstest Du
> > wahrscheinlich neben der eigentlichen Änderung auch die Streichung
> > der "or later"-Klausel mit in Deinen Patch einbauen. Natürlich würde
> > so ein Patch niemals upstream gehen...
> 
> Geht das überhaupt? Muss ich meinen Patch nicht auch v2 or later
> lizensieren lassen, also v2 erlauben? Bei den Contributoren geht man
> davon auss, dass es die gleiche Lizenz ist, das steht ja nicht ne
> Sourceline drin, also kann es doch in solchen Fällen nur "v2 or later"
> bleiben - oder?

Du könntest rein formell ja eine Variante des Programms erstellen, bei
der Du Dich dazu entscheidest, nur v2 beizubehalten; und den Patch dann
gegen diese Version erstellen. In dem Sinne ist es nach meinem
Verständnis schon möglich, einen Patch zu erstellen, der Weitergabe nur
unter v2 erlaubt. Aber das müsstest Du dann wie gesagt sehr deutlich zum
Ausdruck bringen.

> > Bei "v2 or later" kann man selbstverständlich umsteigen. Und dann
> > gibt es wie gesagt auch die Möglichkeit, bestehenden v2-only Code
> > umzulizenzieren, falls alle Copyright-Holder einverstanden sind.
> 
> Falls man die überhaupt alle findet und erreicht! Theorie mal
> beiseite, wie sieht die Praxis aus? Mindestens einer wird nicht
> erreichtbar sein...

Doch, das ist auch in der Praxis möglich. Gab vor kurzem gerade ein sehr
anschauliches Beispiel bie Xorg: Der synaptics-Treiber ist
GPL-lizenziert, im Gegensatz zu so ziemlich allen andern Treibern. (Mit
Ausnahme natürlich der proprietären, sowie des neuen "avivo"-Treibers
für AMD/ATI r500.)

Von Zeit zu Zeit gibt es jemanden, der das Ändern will, so dass
synaptics auch unter MIT-Lizenz gestellt wird. Bisher sind solche
Versuche immer gescheitert, weil nicht alle Entwickler kontaktiert
werden konnten. Neulich hat sich aber jemand kräftig ins Zeug gelegt,
und es tatsächlich geschafft, jeden einzelnen der zig Entwickler
aufzufinden.

(Woraufhin sich dann herausgestellt hat, dass der fleißige Mensch dummer
Weise keine Ahnung von der tatsächlichen Auswirkungen der
Lizenzsituation hatte, und seine Mail an die Entwickler dementsprechend
äußerst irreführend war -- und damit auch die Einverständnisse rechtlich
und moralisch nicht haltbar. Bei der folgenden Diskussion um eine neue
Mail hat sich dann herausgestellt, dass die genaue Situation mit
GPL-Treibern generell ziemlich unklar ist. Schließlich hat sich dann
auch noch gezeigt, dass es keinesfalls Übereinstimmung gibt bei den
Xorg-Entwicklern, dass alle Treiber unbedingt MIT sein müssen. Im
Endeffekt hat es sich, so viel ich weiß, wieder im Sande verlaufen...)

In vielen Fällen existiert das Problem aber gar nicht. Denn es bedarf
eigentlich nicht der Zustimmung der Entwickler, sondern der
Copyright-Holder. Das sind bei vielen Projekten die Entwickler selbst;
bei vielen anderen Projekten sind aber Copyright-Assignments nötig --
zum Beispiel bei praktisch allen GNU-Programmen, sowie bei praktisch
allen kommerziellen GPL-Programmen. (MySQL, Qt etc.)

Dann gibt es nur einen einzigen Copyright-Holder, und der kann ganz
problemlos auf v3 umstellen, selbst wenn der Code vorher v2-only war.

> > > Fände ich auch richtig. Wenn ein Teil, wo ich mal einen GPL
> > > Sourcen begesteuert hätte seit langem auf z.B. Sicherheitsmodulen
> > > läuft, wo der Besitzer nichts anderes laden kann UND ICH DAS SO
> > > WILL und vielleicht nur deshalb die Sourcen beigesteuert habe,
> > > weil ich ein Konzern bin oder ne Bank, würde ich natürlich auf v2
> > > bestehen.
> > 
> > Auf v2 bestehen kannst Du natürlich nur, wenn Du es von vornherein
> > als v2-only verbreitet hast.
> 
> wieso? Wenn ich etwas nach v2 or later lizensieren kann, kann ich es
> nach v2 lizensieren. Dann kann ich Änderungen machen und muss die nach
> GPL ja auch lizensieren lassen - nach v2. Da kann mich keiner zwingen,
> nu v3 und morgen nach v4 lizensieren zu lassen.

Ich fürchte wir reden aneinander vorbei -- mir ist immer noch nicht
wirklich klar, was für eine Situation Du hier eigentlich meintest...

> > Ich bin mal wieder nicht sicher ob ich Deine Beschreibung richtig
> > verstehe; aber ich denke die Frage stellt sich in Deinem Beispiel
> > gar nicht. Wenn ein Hersteller ein Gerät verbreitet, und die Sourcen
> > dazu unter "v2 or later", heißt das natürlich nicht, dass ein
> > Anwender plötzlich einfordern kann, dass der Hersteller v3-mäßig die
> > Signierkeys rausrücken muss oder so. 
> 
> ja, genau das meinte ich. Damit nützt v3 hier ja gar nichts, weil der
> Hersteller sich dann ja einfach auf v2 zurückzieht.

Richtig. Nehmen wir an, es gibt eine Software, die unter v2 or later
vertrieben wird. Nun kommt ein Hardwarehersteller, und verkauft ein
Gerät mit dieser Software. (Eventuell mit eigenen Modifikationen.) Er
muss dann mindestens den Bedingungen der GPLv2 genügen. Insbesondere
muss er die (eventuell modifizierten) Quellen weitergeben -- üblicher
Weise wieder unter v2 or later.

Nun veröffentlicht irgendwer auf Basis dieser Quellen eine neue Version
der Software. Dabei macht er von der "or later"-Klausel gebrauch, und
veröffentlicht diese neue Version unter v3. Wenn dann ein
Hardwarehersteller diese neue Version der Software für seinem Gerät
einsetzen will, muss er dann die Bedingungen der GPLv3 erfüllen. Das
heißt er muss nicht nur die Quellen weitergeben, sondern dem Nutzer auch
die Möglichkeit einräumen, modifizierte Software auf diesem Gerät zu
betreiben.

> > Die Bestimmungen der GPLv3 sind erst dann bindend, wenn jemand "v3
> > or later" (oder v3-only) Code weitergibt.
> 
> was nur geht, wenn er von scratch anfängt - oder?

Nein, siehe oben.

> Ich glaube, bei grossen Projekten ist jeweils mindestens einer nicht
> erreichbar und daher v2 lizensierbar und damit greift v3 nicht so
> wirklich.

Wenn es v2-only Teile gibt, und die Copyright-Holder dieser Teile nicht
erreichbar sind, *und* sich diese Teile nicht relativ einfach durch
neuen Code ersetzen lassen, steckt man bei v2 fest. In allen anderen
Situationen ist der Umstieg machbar.

Linus zum Beispiel glaubt, dass selbst Linux auf v3 umzustellen ginge,
wenn man es denn will -- obwohl ein erheblicher Teil des Codes v2-only
ist.

> Umgekehrt geht es aber: ich kann bei v2 or later nach v3 lizensieren
> und "folgende" auch nur nach v3. Vielleicht ist das die Idee der FSF.

Diese Aussage sieht eigentlich so aus, als ob Du es verstanden hättest.
Würde aber Deinen anderen Bemerkungen oben widersprechen. Also weiß ich
wieder nicht was Du meinst...

-Olaf-



Mehr Informationen über die Mailingliste linux-l