Die GPL ist eine Lizenz für “Freie Software” und wird von vielen Leuten als unheimlich wichtig angesehen. Freiheit definiert sich dabei nicht unbedingt durch die Freiheiten des Benutzers eines Quelltextes. Vielmehr ist die wichtigste “Freiheit” der GPL, daß der Quelltext eines unter ihr stehenden Produktes frei (wiederum unter GPL-Bedingungen) zugänglich gemacht werden muß. Ich habe mit dieser Auslegung von “Freiheit” so meine Probleme, was aber nicht Thema dieses Beitrags sein soll.
Nun ist es so, daß die meisten Verletzer der GPL auf Seiten der “Benutzer” zu finden sind. Benutzer sind dabei jene, die durch die Lizenz die Möglichkeit erhalten den Quelltext zu sehen und zu modifizieren, aber gleichzeitig gezwungen sind ihre Änderungen oder Erweiterungen auch wieder unter der GPL zugänglich zu machen.
Faszinierenderweise geht es scheinbar auch andersherum. Wie? Na indem der Autor zwar verspricht sein Programm sei unter der GPL veröffentlicht, auf der anderen Seite aber nicht den entsprechenden Quelltext zur Verfügung stellt, bzw. einen sehr veralteten Quelltext vorhält.
mRemote ist ein wirklich nützliches Programm welches unter der GPL veröffentlicht wird, wie man auf diesem Screenshot (ganz unten) sehen kann:
(Quelle: mremote.org)
Wer findet den Fehler? Alles okay, oder?
- Setup Package – Download V1.50
- Portable Package – Download V1.50
- Binary Package – Download V1.50
- Source Package – Download V0.50
Ach was? Na da hat sich doch sicher einer verschrieben bei dem Quellpaket, oder? 1.50 und 0.50 … liegt doch nahe. Oder?
Ach herrje, gleich noch ein Verschreiber. Der Dateiname lautet mRemote_0.50_Source.zip
. Sicher nur ein weiteres Versehen?!
Wenn man dann ins Paket schaut, stellt sich heraus, daß die neuesten Dateien vom November 2007 stammen, die neueste Version stammt aber genau wie die letzte Modifikation der (Wiki-)Downloadseite vom Dezember 2008, wie ein vollständiger Screenshot zeigt. Oops? Sicher nur ein weiteres Versehen … oder Vergeßlichkeit?!
Oh nein! Das ist Kalkül! Ein Schuh wird daraus, sobald man sich die Ankündigung des Autors (Screenshot eines Ausschnitts) durchliest. Da ist die Rede davon, daß das Programm jetzt als Teil eines anderen – kommerziellen – Produktes verfügbar ist. Prinzipiell nicht schlecht, denn das Programm hat sicher genug Sexappeal auch ohne daß es mit Quelltext verfügbar ist. Aber wo bleiben meine durch die in der GPL garantierten Rechte als Endnutzer?
Die GPLv3 (eine Version wird auf der mRemote-Seite nicht angegeben, daher sollte automatisch auch die GPLv3 gelten) besagt in ihrer (inofflziellen) deutschen Übersetzung:
Jedesmal, wenn Sie ein betroffenes Werk übertragen, erhält der Empfänger automatisch vom ursprünglichen Lizenzgeber die Lizenz, das Werk auszuführen, zu verändern und zu propagieren – in Übereinstimmung mit dieser Lizenz. Sie sind nicht dafür verantwortlich, die Einhaltung dieser Lizenz durch Dritte durchzusetzen.
Zugegeben, das Programm ist in VB# geschrieben was es ein wenig “unsexy” für Leute macht, die es weiter unter der GPL warten würden. Aber vielleicht finden sich ja doch solche Leute?! Ich habe Binärversion 1.50, wo kann ich den Quelltext dieser Version runterladen?
Sollte man etwa gpl-violations.org oder SFLC einschalten? Wäre sicher mal eine interessante neue Sichtweise auf die Auswirkungen der GPL.
Irgendwie hinkt doch hier etwas, die ganze Auslegung der GPL bis zum heutigen Tage scheint mir einseitig. Das Versprechen des Autors etwas unter GPL zu stellen ist eben auch ein Versprechen an die Endnutzer.
// Oliver
Allerdings kann der Autor eines Programmes die GPL ja gar nicht verletzten, immerhin handelt es sich bei Lizenz nur um eine Sammlung von Bedingungen, die der Anwender erfüllen muss, um von dem Autor das Recht zur Quellcodenutzung zu erhalten.
Also kann er je nach Lust und Laune bei einer neuen Version auch closed-source gehen, es sei denn er hätte Fremd-GPL-Code benutzt.
Irrtum. Die GPL gibt ebenfalls dem Nutzer gewisse Rechte, genaugenommen ist dies das Hauptaugenmerk der GPL. Daher ist das geschilderte Problem sehr wohl ein echtes. Aus dem Vorwort:
Ganz so simpel ist es also nicht. Der Autor geht damit eine Verpflichtung ein, die ihm im Gegenzug die Garantie geben soll, daß seine Software immer in Quellform verfügbar bleiben wird.
Du schriebst:
Auch hier liegt formell – wenn es in der Praxis möglicherweise auch dennoch gemacht wird – ein Irrtum vor. Man kann von einem unter GPL veröffentlichten Quelltext die GPL nicht einfach wieder entfernen. De jure müßte der Entwickler von vornherein zwei Zweige (einen unter GPL und einen ohne GPL) gepflegt haben, damit er es ohn GPL weiternutzen kann. Die GPL-FAQ ist für solche weitergehenden Fragen seit jeher eine gute Anlaufstelle. Ich gebe allerdings zu, daß ich in Sachen GPLv2 noch immer flüssiger bin als in Sachen GPLv3.
In der Praxis dürfte das allerdings ziemlich egal sein, solange es nur ein Urheber ist oder sich alle Urheber einigen können, denn man kann ja behaupten man hätte schon immer zwei Zweige gepflegt 😉 … ohne die Chance für Dritte das Gegenteil zu beweisen.
Abgesehen davon besagt die GPLv3 in 6. Übertragung in Nicht-Quelltext-Form:
Natürlich kompliziert dies die Weitergabe, weshalb die meisten einen Download anbieten. Allerdings wird die andere Methode komplett irrelevant, solange keine Kontaktdaten angegeben sind, die der jeweiligen anderen Weitergabemethode entsprächen.
Ach ja, Betonung liegt bei “Quelltext” auf: korrespondierend. 😉
Anscheinend kann man wieder antworten…
>Man kann von einem unter GPL veröffentlichten Quelltext die GPL nicht einfach wieder entfernen.
Im Prinzip wurde das ja in diesem Fall auch nicht gemacht, da der GPL-Quellcode noch immer verfügbar ist, bloß der neue nicht
Außerdem heißt es in der FAQ
>If you are the copyright holder for the code, you can release it under various different non-exclusive licenses at various times.
(http://www.gnu.org/licenses/gpl-faq.html#ReleaseUnderGPLAndNF)
Vor allem das “various times” scheint ist wichtig, also kann man es auch später noch machen