Kann ich die GPL-Software in einer kommerziellen Anwendung verwenden?


203

Ich habe 3 Fragen zur GPL hier:

  1. Muss ich meine Anwendung unter der GPL freigeben, wenn ich GPL-Software in meiner Anwendung verwende, diese aber nicht ändere oder verteile?

  2. Was passiert, wenn ich Software ändere, die meine Anwendung verwendet? Muss ich dann meine Anwendung unter der GPL freigeben oder kann ich die geänderte Software nur unter den Bedingungen der GPL bereitstellen.

  3. Und was ist, wenn ich GPL-Software verwende, sie aber nicht ändere? Kann ich sie mit meiner Anwendung verbreiten?

Mein Beispiel ist, ich habe ein PHP-Framework, mit dem ich die GeSHi-Bibliothek verwende, um einige Ausgaben hervorzuheben.

  1. Muss mein Framework GPL sein, da GeSHi GPL ist?

  2. Kann ich GeSHi für bestimmte Anwendungsfälle meiner Anwendung ändern, wenn ich die Änderungen an die GeSHi-Betreuer zurückgebe?

  3. Kann ich mein Framework mit GeSHi weitergeben?


10
Kommerziell! = Proprietary
Gerstmann

2
Nur neugierig, was bedeutet in diesem Fall verteilen? Wenn es sich bei dem fraglichen Programm beispielsweise um eine Firmware in einer Appliance handelt, die nur von der Firma, die die Appliance verkauft, berührt werden kann, handelt es sich um eine "Distribution"?
Wes Miller

2
Ja das ist Verteilung. Deshalb gibt es zum Beispiel ADSL-Router, bei denen der Quellcode zum Download zur Verfügung steht (stehen muss). Seriöse Lieferanten stellen die Quelle zur Verfügung, da die Lizenzbedingungen dies von ihnen verlangen. Gleiches gilt für NAS-Boxen, IP-Kameras und zahlreiche andere Gadgets.
quick_now

2
@quickly_now - aus diesem Grund wurde das Tivoization-Zeug in die GPLv3 aufgenommen. Wenn Sie also GPLv2-Code in einer Appliance verwenden, müssen Sie ihn nicht wirklich freigeben, aber wenn Sie GPLv3-Code verwenden, tun Sie dies. Denken Sie daran, dass Tivo GPL-Code verwendet und niemals Änderungen veröffentlicht hat, die eine Menge Leute verärgerten und teilweise zur GPLv3 führten.
Scott Whitlock

Antworten:


177

Muss ich meine Anwendung unter der GPL freigeben, wenn ich GPL-Software in meiner Anwendung verwende, diese aber nicht ändere oder verteile?

ANTWORT: Ihre Frage ist etwas mehrdeutig. Zwei Fälle:

(a) Wenn Sie Ihre Bewerbung nicht verteilen, lautet die Antwort Nein, da Sie Ihre Bewerbung nicht verteilt haben. Wenn es zum Beispiel nur für den internen Gebrauch in Ihrem Unternehmen bestimmt war, sind Sie nicht verpflichtet, etwas zu unternehmen.

(b) Wenn Sie IHRE ANWENDUNG verteilen und eine GPL als Teil Ihrer Anwendung verwenden (selbst wenn Sie nur zur Laufzeit eine Verknüpfung mit einer Bibliothek herstellen) - und selbst wenn Sie kein Geld in Rechnung stellen - und selbst wenn Sie nichts ändern dass GPL in irgendeiner Weise s / w - dann MÜSSEN Sie die Quelle Ihrer Bewerbung zur Verfügung stellen.

Quelle verfügbar zu machen bedeutet nicht, sie herunterzuladen. Es könnte sein, dass Sie eine schriftliche Anfrage erhalten und eine Fotokopie eines Eintrags senden müssen (siehe Kommentare: Sie können einen Eintrag nicht wirklich senden. Dies war übertrieben, um einen Punkt zu machen) . Sie dürfen eine "angemessene" Bearbeitungsgebühr erheben. Der Verpflichtung, eigenen Quellcode zur Verfügung zu stellen, kann man sich jedoch nicht entziehen.

Was passiert, wenn ich Software ändere, die meine Anwendung verwendet? Muss ich dann meine Anwendung unter der GPL freigeben oder kann ich die geänderte Software nur unter den Bedingungen der GPL bereitstellen.

ANTWORT: Siehe oben. Wenn Sie GPL s / w verwendet haben, müssen Sie Ihren Quellcode zur Verfügung stellen. Dies beinhaltet den geänderten GPL-Code.

Und was ist, wenn ich GPL-Software verwende, sie aber nicht ändere? Kann ich sie mit meiner Anwendung verbreiten?

ANTWORT: Siehe oben. Sie können es verteilen (der GPL-Code), sofern Sie Ihre Quelle zur Verfügung stellen.

Muss mein Framework GPL sein, da GeSHi GPL ist?

ANTWORT: Wenn Sie Ihr Framework verteilen, dann JA.

Kann ich GeSHi für bestimmte Anwendungsfälle meiner Anwendung ändern, wenn ich die Änderungen an die GeSHi-Betreuer zurückgebe?

ANTWORT: Sie können, wenn Sie möchten. Das musst du nicht. Sie können es ändern, aber wenn Sie Ihre Anwendung verteilen, müssen Sie Ihre Quelle zur Verfügung stellen und auch die Quelle für die Änderungen, die Sie an der Bibliothek vorgenommen haben.

Kann ich mein Framework mit GeSHi weitergeben?

ANTWORT: Sie können, wenn Sie möchten. Wenn Ihre Anwendung nicht mit dem GPL-Code ausgeliefert wird und Sie die Benutzer dazu bringen, ihn separat herunterzuladen, um ihn zu nutzen, ist Ihr Fall etwas spezieller und könnte zu einigen Argumenten führen, aber das gleiche Prinzip wird höchstwahrscheinlich letztendlich zutreffen: Sie müssen Stellen Sie Ihre Quelle zur Verfügung.

Wenn Sie diese Probleme vermeiden möchten, müssen Sie Dinge mit einer anderen Lizenz oder zumindest der LGPL verwenden, mit der Bibliotheken zur Laufzeit aufgerufen werden können, ohne dass die GPL-Bedingungen viral auf Ihren Code übertragen werden.

Im Zweifelsfall benötigen Sie Rechtsberatung. Jeder Rat, den Sie hier erhalten (von mir oder jemand anderem), sollte ziemlich sorgfältig behandelt werden. Nur ein Anwalt kann Sie angemessen rechtlich beraten.


67

31
Nur ein Hinweis: Es würde wahrscheinlich die Lizenz verletzen, den Quellcode als Fotokopie zur Verfügung zu stellen. In der Lizenz heißt es: "Der Quellcode eines Werks ist die bevorzugte Form des Werks, um Änderungen daran vorzunehmen."
mipadi

26
@Petah: Die GPL ist wie ein Virus: Sie infiziert alles, was sie berührt. Wenn Sie eine allgemeine Benutzeroberfläche bereitstellen und einem Benutzer die Installation verschiedener Komponenten seiner Wahl ermöglichen, können Sie möglicherweise davonkommen, dass die GPL keine Kontamination verursacht. Wie auch immer, angenommen du hast deine Sachen verschenkt und jemand anderes sollte die 2 zusammen bündeln ... dann würde es so aussehen, als ob deine Sachen von der GPL berührt würden. Sie haben eine sehr schwierige Situation, egal wie Sie versuchen, sich darum zu winden.
quick_now

10
Wenn die Frage mehrmals gestellt wurde, warum ist dies dann kein Duplikat?

11
Beachten Sie, dass das Erheben einer "angemessenen" Bearbeitungsgebühr keine starke Abschreckung für Personen darstellt, die an Ihrem Quellcode interessiert sind. Der erste Empfänger Ihres Quellcodes kann sich dafür entscheiden, anderen Ihren Quellcode legal zur Verfügung zu stellen.
Brian

12

Dies scheint sehr stark zu widersprechen, wenn Sie es auf einer Website verwenden, anstatt eine ausführbare Datei neu zu verteilen.

Sie dürfen die Software kopieren, verbreiten und ändern, solange Sie Änderungen / Daten in den Quelldateien nachverfolgen und Änderungen unter der GPL behalten. Sie können Ihre Anwendung über eine GPL-Bibliothek kommerziell vertreiben, müssen jedoch auch den Quellcode bereitstellen. GPL v3 versucht, einige Lücken in GPL v2 zu schließen.

Speziell

Wenn Sie diese Bibliothek in einer ausführbaren Datei vertreiben, müssen Sie Ihren Quellcode offenlegen, indem Sie ihn entweder zusammen mit Ihrer Distribution bereitstellen oder eine zugängliche Methode (URL, physische Kopie) angeben, um die Quelle für 3 Jahre zu erhalten. Gilt nicht, wenn Sie über ein Webportal dienen.

https://tldrlegal.com/license/gnu-general-public-license-v3-%28gpl-3%29


2
Könnten Sie das näher erläutern? Derzeit ist es ein eigener Ein-Satz-Teil und der Text von tldrlegal. Wie unterscheidet sich die Verwendung von GPL auf einer Website von der Verwendung in einer eigenständigen Anwendung?

Eine Website in der Regel nicht verteilen Software (sondern bietet nur einen Service)
Basile Starynkevitch

3
AUSSERDEM: Es gibt die AGPL-Lizenz, die versucht, die als Dienst ausgeführte
kbrock

Wenn die fragliche GPL-Bibliothek beispielsweise in HTML, Javascript und CSS geschrieben ist und der Bibliothekscode vom Server an den Webbrowser der Besucher der Website "verteilt" wird, frage ich mich, ob dies möglicherweise zu Ihrem anderen HTML, Javascript, führt. und CSS-Code, um GPL zu werden. Ein interessanter Punkt ist, dass dieser Code bereits "verfügbar" wäre, wenn man nur die Quelle der Webseite ansieht, obwohl er möglicherweise nicht in der bevorzugten Form vorliegt. Selbst dann wird Ihr serverseitiger Code jedoch nicht verteilt, und daher muss ich mir vorstellen, dass er keine GPL sein muss.
still_dreaming_1 15.11.15

2

Haftungsausschluss : Ich bin kein Anwalt und habe seit einiger Zeit keine der GPL-Versionen mehr gelesen. Daher ist diese Antwort möglicherweise rechtlich falsch.

Wenn Sie Software mit GPL-Komponenten (z. B. statisch verknüpften Bibliotheken) freigeben / vertreiben, muss Ihre Software von der GPL abgedeckt sein. (Dies ist der Eindruck, der für Version 2 vermittelt wird; Version 3 kann davon abweichen.)

Wenn Sie Software unter Verwendung von LGPL-Bibliotheken freigeben / vertreiben, muss Ihre Software nicht von der GPL abgedeckt sein, die LGPL muss jedoch in den Bibliotheken gespeichert sein.

Die Modifikation der [L] GPL-Komponenten schlägt einen Beitrag an den Ersteller / Betreuer vor. Mir ist nicht klar, wie sich dies auf die Lizenzierung Ihres Produkts auswirkt.


-4

Wir können solche Regeln im Dschungel erzwingen, aber im wirklichen Leben (rechtlich für Land oder Staat) kommt es darauf an, wer, wen, wann und was.

Das rechtliche Problem (Gesetz) tritt auf, wenn Sie ein GPL-Programm als Binärdatei oder Bibliothek unter einem Nicht-GPL-Betriebssystem verteilen. Das GPL-Programm infiziert und infiziert den Nicht-GPL-Prozess von Eltern und Kindern (proprietäre und sogar andere Open-Source-Lizenzen) aus rechtlicher Sicht. Das Infizieren bedeutet, dass abgeleitete Programme die GPL verletzen. Das Infizieren bedeutet, dass GPL-Programme ihre eigene Lizenz verletzen. Es gibt kein Problem, wenn Sie eine verteilte GPL-Quelle als eine Person (Person, Organisation, Firma) kompilieren.


11
dies scheint nur in den Punkte gemacht und erklärten wiederholt vor Antwort , die vor 4 Jahren geschrieben wurde
gnat
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.