Der GNU GPL v2-Code wurde in einer anderen Sprache neu geschrieben: Kann ich eine Lizenz ändern?

11

Ich habe einige Teile von Mercurial (das unter GNU GPL v2 lizenziert ist) in C # umgeschrieben . Natürlich habe ich mich intensiv mit dem ursprünglichen Python-Code befasst und einige Teile sind direkte Übersetzungen von Python nach C #.

Ist es möglich, "meinen Code" unter anderen Bedingungen lizenzieren zu lassen oder sogar Teil einer kommerziellen Closed-Source-Anwendung zu werden? Wenn nicht, kann ich wieder Lizenz "my-Code" unter der LGPL, Open-Source es und dann verwenden Sie diese Open-Source C # Bibliothek in meiner Closed-Source - kommerziellen Anwendung?

Anton Gogolev
quelle
3
Wenn Sie mit dem ursprünglichen Code gearbeitet haben (anstatt ihn aus den Protokollen und Dokumenten erneut zu implementieren), fällt er möglicherweise in den Bereich der "abgeleiteten Arbeit". In diesem Fall fällt er möglicherweise immer noch unter die ursprüngliche Lizenz. Sprechen Sie mit einem Anwalt.
@MichaelT Wäre die Verwendung von Dokumenten und Reverse-Engineering-Protokollen nicht auch eine "abgeleitete Arbeit"?
Anton Gogolev
3
nicht unbedingt. Das abgeleitete Werk nimmt das Original und wandelt es in eine andere Form um. Bei traditionelleren Medien ist ein Gemälde urheberrechtlich geschützt, ein Foto des Gemäldes ist ein abgeleitetes Werk. Bei korrekter Durchführung wird dies durch ein Reinraum- Reverse Engineering vermieden. Siehe auch Was sind die Urheberrechts- und Lizenzprobleme beim Portieren von Code? von SO.
INAL, aber AFAIK nur automatische Code-Übersetzung ist urheberrechtlich geschützt.
Vartec
1
@vartec Irgendwelche Beweise dafür?
Anton Gogolev

Antworten:

17

Der Text der Lizenz bezieht sich speziell auf Übersetzungen. Nein, Sie können ihn nicht erneut lizenzieren.

Das nachstehende "Programm" bezieht sich auf ein solches Programm oder Werk, und ein "auf dem Programm basierendes Werk" bezeichnet entweder das Programm oder ein abgeleitetes Werk nach dem Urheberrecht, dh ein Werk, das das Programm oder einen Teil davon enthält es, entweder wörtlich oder mit Modifikationen und / oder in eine andere Sprache übersetzt.

Mason Wheeler
quelle
1
IANAL, aber ich würde vermuten, dass "In eine andere Sprache übersetzt" in diesem Zusammenhang nicht auf eine andere Programmiersprache verweist. Das Urheberrecht schützt nur den genauen Ausdruck einer Idee - nicht die Idee selbst.
Onorio Catenacci
2
@Onorio: GPL ist kein Urheberrecht, sondern eine Lizenz.
Mason Wheeler
5
@OnorioCatenacci Dies ist einer der Fälle, in denen "Sprache" etwas klebrig wird. Der Schlüsselbegriff ist "abgeleitete Arbeit", die das OP mit Sicherheit geschaffen hat. Die GPL erlaubt ausdrücklich die Erstellung von abgeleiteten Werken (auch bekannt als "Free ..."), aber die ursprünglichen Lizenzbeschränkungen gelten weiterhin für das Derivat. Die GPL ermöglicht eine erneute Lizenzierung (schamloser Stecker, siehe meine Antwort). Dies ist eher eine Frage der Lizenzierung als des Urheberrechts.
@MasonWheeler "bedeutet entweder das Programm oder eine abgeleitete Arbeit nach dem Urheberrecht" - wiederum kein Anwalt, aber das scheint zu sagen, dass das Urheberrecht irgendwie involviert wäre.
Onorio Catenacci
1
@MasonWheeler "GPL ist kein Urheberrecht, sondern eine Lizenz." Möchten Sie das erklären? Eine Lizenz kann Ihnen lediglich bestimmte Rechte an einem urheberrechtlich geschützten Werk gewähren. Wenn (groß wenn) das Urheberrecht an dem neuen Werk nicht von den Copyright-Inhabern des Originalwerks beansprucht werden kann, gilt die Lizenz nicht.
Jaydee
3

Basierend auf:
http://www.gnu.org/licenses/gpl-faq.html#AllCompatibility

Sie sollten mit dem zweiten Szenario, das Sie dargestellt haben, einverstanden sein.

Die Teile, die Sie kopiert haben, bleiben unter GPLv2, aber Ihre gesamte Bibliothek kann als LGPL v2.1 oder höher freigegeben werden. Sie können dann Ihren geschlossenen Quellcode unter den Bedingungen der LGPL mit dieser Bibliothek verknüpfen.

Graben Sie wie immer ein wenig und stellen Sie sicher, dass Sie die Einschränkungen verstehen.


quelle
3
Definitiv nicht. Denken Sie darüber nach: Die GPL würde keinen Sinn ergeben, wenn es so wäre. Sie können einfach einen beliebigen GPL v2-Code nehmen und ihn auf LGPL umstellen. Das würde die GPL überflüssig machen. Schauen Sie sich das Kleingedruckte an: "Mit LGPLv2.1 können Sie den Code unter jeder Version der GPL (nicht LGPL) seit GPLv2 neu lizenzieren. Wenn Sie den LGPLed-Code in diesem Fall auf die Verwendung einer geeigneten Version der GPL umstellen können (wie in der Tabelle angegeben) können Sie diese Kombination erstellen. " Das bedeutet nur, dass es legal ist, Ihre LGPL-Bibliothek auf GPL umzustellen, aber nicht umgekehrt. Was wieder Sinn macht.
Dilemma