Ich erstelle eine interne Anwendung für das Unternehmen, mit dem ich beauftragt bin. Wir möchten in dieser Anwendung eine GPLv2-lizenzierte Bibliothek verwenden . Ein paar Punkte
- Die Anwendung darf nur innerhalb des Unternehmens verwendet werden und darf nicht für die Öffentlichkeit zugänglich sein. Es ist nur für den firmeninternen Gebrauch bestimmt.
- Es wird niemals verkauft werden !! . Es wird also kein Geld direkt durch den Verkauf des Codes verdient. Es ist kein Produkt.
- Es gibt zwei Arten der Verwendung der Anwendung
- Seine native Form ist eine konsolenbasierte EXE-Datei (die die GPL-Bibliothek verwendet). und
- Verwendung über ein Webinterface, das die ausführbare Datei aufruft.
- Der Quellcode bleibt eine geschlossene Quelle (nur für Unternehmenszwecke) und ist korrekt
Ich habe zahlreiche Fragen zu SO zu diesem Thema durchgesehen ( eine davon wurde als "Off-Topic" geschlossen und eine andere von Programmierern nicht als "Off-Topic" gekennzeichnet ), aber es fiel mir schwer zu verstehen, ob meine Interpretation der Lizenz korrekt ist.
Nach meinem bisherigen Verständnis darf ich diese Bibliothek ohne Bedenken nutzen. Ich ändere weder den Quellcode noch verteile ich die Anwendung oder mache sie öffentlich verfügbar. Die Anwendung wird weder verkauft noch an Dritte außerhalb des Unternehmens verteilt (sie ist jedoch in der externen DR-Einrichtung unseres Unternehmens erhältlich). Es ist sehr wahrscheinlich, dass ich die Binärdateien der veröffentlichten Versionen verwende und nicht aus dem Quellcode neu kompiliere.
Die folgende Frage aus den GNU-FAQ scheint meine Gedanken zu stützen.
Erfordert die GPL, dass der Quellcode geänderter Versionen der Öffentlichkeit zugänglich gemacht wird?
Die GPL fordert Sie nicht auf, Ihre geänderte Version oder einen Teil davon freizugeben. Es steht Ihnen frei, Änderungen vorzunehmen und diese privat zu verwenden, ohne sie jemals freizugeben. Dies gilt auch für Organisationen (einschließlich Unternehmen). Eine Organisation kann eine geänderte Version erstellen und intern verwenden, ohne sie jemals außerhalb der Organisation freizugeben.
Wenn Sie die geänderte Version jedoch auf irgendeine Weise für die Öffentlichkeit freigeben, müssen Sie den geänderten Quellcode den Benutzern des Programms unter der GPL zur Verfügung stellen.
Daher gibt die GPL die Erlaubnis, das geänderte Programm auf bestimmte Weise und nicht auf andere Weise freizugeben. Aber die Entscheidung, ob Sie es veröffentlichen, liegt bei Ihnen.
Kann eine GPLv2-lizenzierte Bibliothek in der firmeninternen Intranet-Anwendung verwendet werden?
Antworten:
Die GPL ist in allen Varianten eine Weitergabelizenz . Es gilt einfach überhaupt nicht, wenn Sie den Code nicht weitergeben. Es kann in Zukunft zutreffen, wenn Sie eines Tages beschließen, aus Ihrer Anwendung ein Produkt zu machen, aber nicht jetzt.
quelle
Ich denke, Sie haben die Antwort zitiert, also haben Sie es.
Mein Wissen über die GPL ist, dass Sie für das, was Sie tun möchten, kein Problem haben.
quelle
Die Antwort hängt hier von der rechtlichen Definition des Vertriebs ab .
Wenn Sie Ihren Mitarbeitern ein Programm zum Ausführen geben, das sie verteilen, gelten die GPL-Anforderungen, und Sie müssen den Mitarbeitern, die das Programm erhalten, auch die Quelle mitteilen.
Wenn Sie Ihren Mitarbeitern eine Kopie des Programms geben, die nicht vertrieben wird, haben Sie keine Anforderungen, da Sie es nicht vertrieben haben.
Die FAQ, die Sie zitiert haben, besagt, dass Sie Ihren Code nicht öffentlich verfügbar machen müssen . (Das heißt, für jede zufällige Person auf der Straße.)
Beachten Sie, dass es unter GPLv2 klar ist, dass ein Webdienst nicht als Distribution betrachtet wird. Es ist nur die Konsolenanwendung, die verwirrend ist.
Ich schlage vor, dass Sie sich von Ihrem Anwalt beraten lassen.
quelle
Ja, Sie können ABER die Zusammenarbeit mit Subunternehmern, Partnerfirmen und dergleichen berücksichtigen. Dies hat viele Admins auf der Rückseite gebissen, als "nur für Inhouse" "unter Partnern geteilt" und dann "Produkt zum Verkauf" wurde. Dann müssen entweder die GPL-Teile von Grund auf neu geschrieben werden oder Sie geben Quellen in Ihr Intranet frei.
quelle
Mit der LGPL-Version 2 können Sie die Quelle und die Binärdatei neu verteilen.
Sie können es sogar verkaufen.
Die einzige wirkliche Einschränkung ist wie folgt:
Wenn Sie die Bibliothek ändern und verteilen, müssen Sie die an der Bibliothek vorgenommenen Änderungen öffentlich freigeben. Lesen Sie Punkt 2 der LGPL.
Wenn Sie es nicht ändern, haben Sie kein wirkliches Problem.
quelle
Ich denke nicht, dass das ein Problem wäre. Webanwendungen, die GPL-Code verwenden, den Benutzern jedoch nicht als Quellcode zur Verfügung stehen, sind eines der Probleme, die die GPLv3 im Vergleich zur GPLv2 geändert hat, und schließen diese "Lücke". Dies scheint im Großen und Ganzen die gleiche Frage zu sein.
Abhängig davon, wofür genau die Bibliothek bestimmt ist, besteht eine andere offensichtliche Möglichkeit, das gesamte Problem zu vermeiden, darin, einen sehr einfachen Wrapper um die Bibliothek zu erstellen. Wenn die Bibliothek GPL ist, muss der Wrapper möglicherweise GPL sein, aber wenn die Schnittstellen klar voneinander getrennt sind, sollte die Lizenz des Wrapper-Codes nicht (wie ich fast schon sagte, nicht, aber wenden Sie sich an einen Fachmann Auswirkungen auf die Lizenzanforderungen der Hauptanwendung haben.
quelle
Es ist wichtig, sich in all diesen "Programmierer-zu-Programmierer" -Ratschlägen daran zu erinnern, dass nichts davon ein Rechtsbeistand ist. Wie dieser Thread verdeutlicht, gibt es Raum für Interpretationen mit der GPL.
Sie haben die Kosten für die Offenlegung Ihrer Organisation rechtliche Schritte abwägen , ob Sie die GPL verletzen eine gute vs. bekommen, klingen Rechts Meinung. Es gibt gute Ideen in diesem Thread, aber ich würde nicht allein über diese Eingabe entscheiden.
-
Zum Beispiel ist hier eine Falte: Was ist, wenn der GPL-Code JavaScript ist?
Wenn ein Benutzer auf eine Website mit GPL-JavaScript-Code zugreift, wird der "Quellcode" (in diesem Fall eine JS-Datei) an den Endbenutzer "verteilt". Bedeutet das, dass Ihre gesamte Website GPL-zertifiziert sein muss? Darüber gibt es auch eine ganze Debatte .
Obwohl ich es hasse, Anwälte genauso zu bezahlen wie den nächsten fleißigen Mann, ist dies ein Bereich, in dem es im Allgemeinen besser ist, sich nicht auf Ratschläge aus dem Internet zu verlassen (mit Ausnahme dieser Ratschläge natürlich).
quelle
Wie bereits auf früheren Postern erwähnt, gilt die GPL-Lizenz nur, wenn Sie Ihre Anwendung freigeben. Wenn sie nur für den internen Gebrauch bleibt, gibt es kein Problem. Es lohnt sich jedoch, die Auswirkungen zu berücksichtigen, falls sich dies jemals ändert.
Mein grundlegendes Verständnis der Lizenz besteht darin, dass Sie den Quellcode ändern und die resultierende Anwendung dann verkaufen können, wenn Sie dies wünschen, jedoch unter der Bedingung, dass Sie den Quellcode allen Personen zur Verfügung stellen, die danach fragen, einschließlich aller Änderungen, die Sie daran vorgenommen haben.
Im Fall einer kompilierten Bibliothek ist der GPL-Code von Ihrer Hauptcodebasis getrennt, sodass nur der Quellcode für die kompilierte Bibliothek freigegeben werden muss - nicht der Rest Ihrer Codebasis.
Wo die Bibliothek nicht kompiliert wird - also in einer PHP-Anwendung - besteht die Trennung meines Erachtens immer noch. Angenommen, Ihre Anwendung verwendet eine Open-Source-Bibliothek zum Generieren von PDFs. Jede Änderung des PDF-Generierungscodes wird durch die Lizenz abgedeckt und Verbesserungen müssen freigegeben werden. Code in Ihrer Anwendung, der diese Bibliothek verwendet, muss jedoch nicht freigegeben werden .
Bitte beachten Sie, dass sich dies mit der GPL v3 ändert, wobei Ihr Code Open Source sein muss, wenn Sie eine Verknüpfung zu einer Open Source-Bibliothek herstellen ...
quelle
Ich bin nicht sicher, ob es in Ordnung ist, den Mitarbeitern die Weiterverteilung dieser Anwendung zu verbieten, da die Anwendung selbst ebenfalls GPL ist. Was Sie also für eine "interne Anwendung" halten, könnte möglicherweise (legal?) Zusammen mit dem Quellcode durchgesickert sein.
quelle