Forking GPL-Projekt: Habe ich volle Rechte an der neuen Fork oder habe ich noch Abhängigkeiten mit den ursprünglichen Eigentümern?

34

Ich überlege, eine Abzweigung für ein kleines Projekt zu schaffen, das unter der GPLv2 lizenziert ist , und ich habe einige sehr spezifische Fragen, die ich bei meinen Recherchen auf verschiedenen Websites und in verschiedenen Foren nicht beantworten konnte.

Wenn ich den Code weitergebe, bin ich gezwungen, das neue Projekt unter der gleichen Lizenz (GPL) freizugeben, wie ich es tun werde. Kann ich mich jedoch auch dazu entschließen, es unter einer doppelten Lizenz, einer kommerziellen, freizugeben?

Besitze ich beim Verzweigen des Projekts automatisch das Urheberrecht an der gesamten Sache? Dies ist relevant, wenn Sie beispielsweise über eine zukünftige Änderung der Lizenz entscheiden oder die GPL-Lizenz gegenüber einer dritten Partei erzwingen möchten

Visiedo
quelle
10
Wäre dies möglich, könnte jeder einfach ein GPL-Projekt starten und dieselbe Software mit einer brandneuen Lizenz erwerben, um alle GPL-bezogenen Einschränkungen zu beseitigen und die GPL-Lizenz mit einem einfachen Schritt zu annullieren.
user2485710
Die GPL erlaubt eine kommerzielle Nutzung!
Feklee

Antworten:

75

Die kurze Antwort: Wenn Sie ein bestehendes Projekt aufteilen, haben Sie im Allgemeinen keine Berechtigung zum Ändern der Lizenz und Sie erhalten auch kein Urheberrecht für den Code, den Sie kopiert haben.

Sie tun das Urheberrecht an allen (nicht - trivialen) Änderungen oder Ergänzungen haben , dass Sie machen.


Die lange Antwort:

Die einzige Möglichkeit, das Urheberrecht an einem Codeteil zu erlangen, besteht darin, es selbst zu schreiben oder das Ihnen zugewiesene Urheberrecht vertraglich zuzuweisen. Dies bedeutet, dass durch das Verzweigen eines vorhandenen Projekts die Urheberrechte am Code des ursprünglichen Projekts oder der Verzweigung nicht geändert werden.

Die einzigen Personen, die eine Urheberrechtslizenz ändern können, sind die Inhaber dieses Urheberrechts. Befinden sich im Code eines Projekts mehrere Urheberrechtsinhaber, müssen alle Urheberrechtsinhaber einer Änderung der Urheberrechtslizenz zustimmen. Dies bedeutet, dass Sie nicht berechtigt sind, die Lizenz Ihrer Gabel zu ändern (auch nicht die Doppellizenz), es sei denn, die vorhandene Copyright-Lizenz gibt Ihnen ausdrücklich das Recht, den Code unterzulizenzieren.

Bart van Ingen Schenau
quelle
2
Gute Erklärung der Urheberrechtsfragen.
Rory Hunter
2
@ArtB, nicht sicher in Bezug auf GPL -> AGPL, aber die LGPL ermöglicht es Ihnen speziell, eine modifizierte Version unter GPL zu veröffentlichen ( siehe Artikel 2 ). Was Sie wirklich tun dürfen, hängt von der ursprünglichen Lizenz ab.
Bruno
3
@ 2rs2ts nicht sicher, was Sie sagen, ist wahr (siehe Abschnitt 13 der GPLv3 ... natürlich hängt es davon ab, ob wir GPLv2 oder GPLv3 sprechen). Darüber hinaus gehören Ihre Änderungen in der Regel immer Ihnen. Wenn Sie GPL-Projekt A ein magisches Widget hinzufügen, müssen Sie möglicherweise das Los unter der GPL neu verteilen. Wenn Sie BSD-Projekt B jedoch dasselbe magische Widget hinzufügen, können Sie Ihre Inhalte erneut lizenzieren (und keine Inhalte aus Projekt A). wie Sie möchten (kompatibel mit der Lizenz von Projekt B). (Holen Sie sich wie immer Rechtsberatung, wenn Sie sicher sein möchten. Dies ist nicht der Fall.)
Bruno
1
Denken Sie daran, dass AFAIK (aber IANAL) Ihr Code ist, egal was passiert , dh Sie können einen Patch unter einer beliebigen Lizenz veröffentlichen, unabhängig von der Lizenz des Zielprojekts .
o0 '.
4
@Lohoris: Sie haben Recht, dass Sie Patches veröffentlichen können, die Sie mit einer beliebigen Lizenz schreiben. Wenn Sie diese Lizenz jedoch nachlässig auswählen, kann der gepatchte Code nicht mehr verbreitet werden, da nicht alle Lizenzanforderungen erfüllt werden können.
Bart van Ingen Schenau
24

Ihr Forked-Projekt ist eine Ableitung des ursprünglichen Projektcodes. Mit anderen Worten, Ihr Projekt verwendet das ursprüngliche Projekt, und Sie sind daher an die Lizenz gebunden. Wäre dies nicht der Fall, hätte eine Lizenz überhaupt keinen Sinn.

Nein, Sie können keinen Code unter einer proprietären Lizenz freigeben, wenn er von Code abgeleitet ist, der dies nicht zulässt.

große Nase
quelle
Barts Antwort impliziert strengere Bedingungen für die Lizenzierung von Forked Code als Ihre - welche sind im Allgemeinen korrekt?
Thomas
Ihre Antwort ergibt eine gegabelte, von einem Projekt abgeleitete Arbeit, die die erneute Lizenzierung ermöglicht, wenn sich der ursprüngliche Code unter einer Lizenz befand, die die erneute Lizenzierung abgeleiteter Arbeiten ermöglicht. In der Antwort von Bart heißt es, dass Sie keinen gespaltenen Code neu lizenzieren können, es sei denn, Sie erwerben das Urheberrecht, unabhängig davon, was in der ursprünglichen Lizenz angegeben ist. Sind diese gleichwertig?
Thomas
4
@Thomas Dans sind korrekt. Wenn die ursprüngliche Lizenz eine erneute Lizenzierung zulässt, können Sie das neue Projekt erneut lizenzieren. Ich bin nicht davon überzeugt, dass die Antwort von Bart besagt, wofür Sie es interpretieren. OP spricht von Code, der unter der GPL lizenziert ist, daher sind die beiden in diesem Fall gleichwertig.
Taemyr
5
@ Thomas, ich glaube nicht, dass es dort einen Konflikt gibt. Der Sinn unserer beiden Antworten ist, dass Sie weiterhin an die Lizenz des Codes gebunden sind, aus dem Sie herausgegriffen haben . Sie können jedoch alles tun, was die Lizenz dieses Codes Ihnen erlaubt. Bart merkt an, dass Sie Ihre Arbeit unter einer anderen Lizenz ausstellen können, wenn die Lizenz des Originalwerks Ihnen die Erlaubnis gibt.
@Taemyr Ja, ich glaube, ich war verwirrt, ob Barts Antwort auf alle Lizenzen (wie das Schreiben andeutet) oder nur auf die GPL (wie diese Frage andeutet) zutrifft.
Thomas
17

Vergessen Sie die GPL für einen Moment und schauen Sie sich das Urheberrecht an. Wenn Sie ein Projekt aufteilen, ist der gesamte Code, der im ursprünglichen Projekt vorhanden war, urheberrechtlich von demjenigen geschützt, der diesen Code im ursprünglichen Projekt geschrieben hat. Der gesamte Code, den Sie anschließend schreiben, unterliegt Ihrem Urheberrecht. Wenn Sie also nicht den gesamten Code des ursprünglichen Projekts neu schreiben, gehört dieser Code nicht Ihnen und Sie haben keine gesetzlichen Rechte.

Als nächstes sehen Sie sich die GPL-Lizenz an und prüfen, welche Rechte Sie über die Rechte des Urheberrechts hinaus haben. Sie können abgeleitete Werke erstellen, wodurch das gesamte Gabelgeschäft in erster Linie legal ist - mit dem einfachen Urheberrecht wäre es Ihnen nicht gestattet, abgeleitete Werke zu erstellen. Als nächstes können Sie den Code verwenden, solange Sie ihn nicht verteilen. Solange kein anderer Benutzer den gegabelten Code in die Hand nehmen kann, können Sie mit der GPL das tun, was Sie wollen.

Wenn Sie jedoch den gespaltenen Code, einschließlich des urheberrechtlich geschützten Codes einer anderen Person, vertreiben, haben Sie nur die Erlaubnis des Urhebers, wenn Sie deren Regeln befolgen. Eine Regel ist, dass Sie den gesamten Code unter der GPL lizenzieren müssen (einschließlich Ihres eigenen). Eine andere Regel ist, dass Sie den Quellcode an andere weitergeben müssen. Überprüfen Sie die GPL für Details.

Das Ändern der Lizenz wäre schwierig, solange der ursprüngliche Code noch vorhanden ist. Sie können Ihren Code nicht so lizenzieren, dass der nächste Benutzer den Code nicht so verwendet, wie es die GPL zulässt. Sie können auch nicht zulassen, dass er Dinge mit dem Code ausführt, den die GPL nicht zulässt.

gnasher729
quelle
1
Ich stimme der Antwort im Allgemeinen zu, aber ich denke, Sie möchten diesen Satz möglicherweise umformulieren: "Mit dem einfachen Urheberrecht wäre es Ihnen nicht gestattet, ein abgeleitetes Werk zu erstellen." In der Regel reicht es wahrscheinlich aus, so zu tun, als ob dies korrekt wäre, aber es gibt Ausnahmen. (Verfallene Urheberrechte, Parodie usw.) Ich gebe jedoch zu, dass die meisten nicht auf die GPL anwendbar sind.
Patrick M