Ich arbeite an einem Prototyp für ein Softwaresystem, das (zumindest zu Beginn) als Closed Source vorliegen wird.
Um Zeit zu sparen, denke ich darüber nach, eine Bibliothek zu verwenden (dh statisch zu verknüpfen), die unter der GPLv3 lizenziert ist , damit ich mein Design schnell testen kann. Wenn ich die Software zu diesem Zeitpunkt vertreiben würde, müsste ich den Quellcode mitverteilen.
Was ist, wenn ich es nicht tue, mich aber davon überzeugt habe, dass mein System funktioniert, und dann die GPL-Bibliothek durch meinen eigenen Code ersetze, bevor ich sie verteile? Wäre das Ergebnis durch die GPL "kontaminiert"?
Ich habe das Gefühl, dass das Beibehalten der GPL-Bibliothek in meinem Git- Verlauf einen Unterschied machen kann oder nicht.
licensing
version-control
gpl
closed-source
Laurent S
quelle
quelle
Antworten:
Die GPL schreibt :
Daher gilt diese Bedingung nur, wenn Ihre Arbeit auf der Bibliothek basiert, die in der Lizenz wie folgt definiert ist:
Das heißt, Ihr Programm basiert nur dann auf der Bibliothek, wenn es sich um ein abgeleitetes Werk gemäß dem Urheberrecht handelt. Die rechtliche Definition dieses Begriffs variiert in den verschiedenen Gerichtsbarkeiten etwas und bezieht sich in der Regel nicht direkt auf Software. Zum Beispiel schreibt der US Copyright Act:
Was dies für Software bedeutet, muss von den Gerichten auf der Grundlage früherer ähnlicher Urteile ausgelegt werden. Ich bin mit der einschlägigen Rechtsprechung in Ihrer Rechtsprechung nicht ausreichend vertraut, um mit Sicherheit sagen zu können, wie ein Gericht über Ihre Rechtssache entscheiden würde. Man könnte argumentieren, dass "das Ersetzen der GPL-Bibliothek durch eigenen Code" ein Akt der Übersetzung ist, insbesondere wenn Ihr Code stark von der GPL-Implementierung inspiriert ist. Selbst die erneute Verwendung der API der GPL-Bibliothek könnte Sie in heißes Wasser versetzen (siehe Oracle vs. Google ).
Wenn Ihnen die Antwort wichtig ist, empfehle ich, kompetenten Rechtsrat einzuholen, anstatt Fremde im Internet zu fragen.
quelle
Solange Sie die Software für niemanden freigeben, während Sie eine Verknüpfung zu GPL-Bibliotheken herstellen, sind Sie in Sicherheit. Der virale Aspekt der GPL tritt nur dann in Kraft, wenn Sie Ihre Software vertreiben.
Es wäre natürlich besser, wenn Sie eine Bibliothek mit einer freizügigeren Lizenz wie LGPL oder APL2 oder MIT finden könnten.
quelle
Ich glaube nicht, dass es bei Ihrer Frage wirklich um die GPL geht. Es geht um den Prototyp und darum, ob er in Zukunft als Grundlage für das lieferbare Softwaresystem verwendet wird.
Wenn Sie einen Wegwerfprototyp erstellen und keinen der Codes in Ihrem zu liefernden System wiederverwenden möchten, verwenden Sie eine GPL-Bibliothek.
Drei Ansätze, die Sie ergreifen können
Wenn Sie jedoch den Prototyp weiterentwickeln wollen (etwas, auf das viele Manager drängen!), Haben Sie drei Ansätze:
Ich schlage vor, Sie entscheiden sich für den ersten Ansatz, da Sie dann über Open Source-Arbeiten verfügen, die Sie in Zukunft als Teil Ihres professionellen Portfolios verwenden können.
Der zweite Ansatz ist ebenfalls gut, da Sie das System sowieso so entwerfen sollten , dass Sie genau die Funktionen / Klassen erstellen, die Sie benötigen, und diese auswerten, bis Sie die Bibliothek oder den benutzerdefinierten Code haben, der diese Funktionalität ausfüllt.
quelle
Ich kann mir zwei Aspekte vorstellen, die Sie bei Ihrem Ansatz berücksichtigen sollten. Die erste Möglichkeit ist unkompliziert: Wenn Sie Ihr Projekt nicht verteilen oder (oder weil es GPLv3 ist und es für die Öffentlichkeit zugänglich macht), während Sie Code verwenden, der unter der GPL veröffentlicht ist, ist es schwer einzusehen, wie Sie Ihren Code verteilen müssten auch unter der GPL-Lizenz unter den Weiterverteilungsbedingungen.
Der zweite Aspekt ist für Sie möglicherweise wichtiger. Wenn Sie eine eigene Implementierung erstellen, um die GPL-Bibliothek zu ersetzen, müssen Sie darauf achten, keine abgeleiteten Arbeiten zu erstellen. Ich bin mir zwar sicher, dass Sie gute Absichten haben, den Quellcode nicht direkt zu kopieren - aber Sie werden mit größerer Wahrscheinlichkeit keine wesentlichen Teile der Bibliotheks-API kopieren.
Wenn es sich um ein kommerzielles Produkt handelt, muss dieses Risiko geprüft und bewertet werden, indem die GPLv3-Lizenz sorgfältig durchgelesen wird und im Zweifelsfall eine professionelle Rechtsauffassung eingeholt wird.
quelle
Wenn Sie planen, Ihren eigenen Code zu schreiben, um den GPL-Code zu ersetzen, besteht ein potenzielles Problem, da Sie den Code nicht in einer Reinraumumgebung schreiben. Sie möchten wirklich, dass jemand, der sich noch nie den GPL-Code angesehen hat, eine Ersatzbibliothek schreibt. Wenn Sie hingegen eine GPL-Bibliothek einfach gegen eine bereits veröffentlichte Bibliothek mit einer anderen Lizenz austauschen möchten, ist dies kein Problem. Die andere Bibliothek wurde vermutlich bereits in einer Reinraumumgebung geschrieben.
quelle
Wenn Sie mit dem GPL-Code Zugriff auf die Revisionen gewähren, werden diese vollständig GPL-geschützt. Aber das willst du nicht, denn das wäre keine geschlossene Quelle ...
Für einen späteren Zustand, in dem kein GPL-Code mehr verwendet wird, ist es einfach irrelevant, dass Sie irgendwann zuvor GPL-Code verwendet haben.
quelle
Die GPL wird nur bei der Distribution ausgelöst ... Sie können tun, was Sie wollen, wenn Sie keine modifizierte Version oder abgeleitete Arbeit veröffentlichen.
Wenn Sie Ihre Quelle in einem öffentlichen Repository wie GitHub veröffentlichen möchten, liegt möglicherweise ein Problem vor. Nur Git zu benutzen ist irrelevant, wenn es privat ist.
quelle