Donnerstag, 24. Mai 2012


Artikel

August 2010 | Artikel

Urvater der Lizenz

(Link zum Artikel: http://www.entwickler-magazin.de/jaxenter//003254)

Lizenzsuppe

Text: Markus Stäuble
  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share
In der letzten Lizenzsuppe haben Sie die unterschiedlichen Varianten von Copyleft kennen gelernt. Mit diesem Wissen soll nun tiefer in das Dickicht der Lizenzen vorgedrungen werden. Der erste Lizenzkandidat, der sich einer genaueren Betrachtung stellen darf, ist der Urvater der Lizenz, die GNU General Public License (GPL). Hin und wieder trifft man auch auf die Abkürzungen GGPL und GNU GPL.

Historie

Schon am Namen lässt sich der Ursprung der Lizenz erraten. Der Vater des GNU Project, Richard Stallman, hat im Januar 1989 die erste Version der Lizenz veröffentlicht. Er hat dabei nicht auf der grünen Wiese begonnen, sondern existierende Lizenzen aus dem GNU Project zusammengeführt. Im Jahr 1991 kam durch die FSF (Free Software Foundation) bereits die zweite Version der Lizenz. Eine hervorzuhebende Änderung gegenüber Version 1 ist die Möglichkeit, die Lizenz auf bestimmte Länder einzuschränken. Nach vielen Erfahrungen mit der Lizenz wurde am 29. Juni 2007 die finale Version 3 der GPL veröffentlicht. Hier wurde u. a. auch stark auf rechtliche Problematiken außerhalb der USA eingegangen. Die Version 1 trifft man heutzutage nur noch vereinzelt in Projekten an. Die Versionen 2 und 3 werden aber von vielen Projekten verwendet.

Wie eingangs erwähnt, fällt die GPL unter den Stamm der Lizenzen mit strengem Copyleft. Das hat mehrere Auswirkungen, sobald diese Bibliothek im kommerziellen Umfeld verwendet werden soll. Der erste Umstand lässt sich salopp zusammenfassen mit „mitgegangen, mitgefangen“. Beim Einsatz im eigenen Projekt, sei es auch nur ein unverändertes Kompilieren gegen diese Bibliothek, fällt das Projekt automatisch unter diese Lizenz. Einsatz bedeutet an dieser Stelle, dass Interaktion auf Quellcode passiert. Sobald die eigene Software unter die GPL-Lizenz fällt, sind nachfolgende Konsequenzen damit verbunden: Es dürfen keine Lizenzgebühren verlangt werden. Der Quellcode muss zur Verfügung gestellt werden. Auch der Lizenztext muss mitgeliefert werden. Zusätzlich darf man Lizenznehmern auch keine weiteren Beschränkungen auferlegen. Der Lizenztext hat unverändert zu bleiben. Wer sich nicht daran hält, hat mit rechtlichen Konsequenzen zu rechnen. Es gibt mehrere Gruppierungen, die sich die Aufdeckung solcher Verstöße auf die Fahne geschrieben haben. Ein Beispiel hier ist gpl-violations. Hierbei handelt es sich um eine Seite, die Verstöße gegen die GPL öffentlich macht. Es bleibt aber nicht bei der Veröffentlichung, sondern eines der Ziele ist die Unterstützung.

Als Entwickler sollte man sich grob merken, dass beim Einsatz von Frameworks unter GPL eine genauere Betrachtung notwendig ist. Unabhängig von Lizenzgebühren kann Quellcode ein unverzichtbarer Wettbewerbsvorteil sein.

Neue Bibliotheken gehören abgestimmt

Für kommerzielle Softwareentwicklung scheidet Software unter GPL aus, jedenfalls, wenn sie in eigene kommerzielle Software einfließen soll. Zum Abschluss möchte ich nochmals betonen, dass Softwareentwickler nicht zu Juristen mutieren sollen. Trotzdem ist es wichtig, bei neuen Bibliotheken auf die Lizenz zu achten. Warum nicht im Projektwiki eine Übersicht einbinden mit Bibliotheken und Lizenzen, die problemlos eingesetzt werden können? Bei neuen Bibliotheken ist deshalb eine Abstimmung und Information an den Projektleiter ratsam. Das Lizenzthema darf nicht auf den Schultern der Entwickler ausgetragen werden.

In diesem Sinne wünsche ich Ihnen einen schönen sonnigen Monat. Neben die Lizenzsuppe passt auch noch ein Grill, denn die Lizenzsuppe steht ja inzwischen beim Projektleiter.

Markus Stäuble ist Senior IT-Consultant bei einer internationalen Werbeagentur. Er schreibt regelmäßig Artikel für diverse Fachzeitschriften und gibt sein Wissen gerne in Vorträgen weiter.

andere Artikel dieser Serie

Kommentare

Gravatar Robert 06.08.2010
um 10:09 Uhr
Interessanter Artikel. Allerdings würde ich die GPL nicht als Urvater der Lizenz bezeichnen, da beispielsweise die BSD-Lizenz knapp 7 Jahre länger existiert. #zitieren
Gravatar Markus Stäuble 06.08.2010
um 11:39 Uhr
Danke für den Kommentar. Urvater habe ich deshalb genommen weil es heute jedenfalls so aussieht als hat es vor der GPL nichts gegeben. Wenn ich über BSD schreibe, nenne ich dass dann Ur-UrVater ;-) #zitieren
Gravatar RPR 09.08.2010
um 13:21 Uhr
Hallo,
das Thema ist sehr wichtig, vielen Dank!
Zwei Anmerkungen hätte ich:

Beim Einsatz im eigenen Projekt, sei es auch nur ein unverändertes Kompilieren gegen diese Bibliothek, fällt das Projekt automatisch unter diese Lizenz. Einsatz bedeutet an dieser Stelle, dass Interaktion auf Quellcode passiert.
Ähhh, ja was nun? Schon beim Kompilieren gegen die Lib oder doch erst bei Veränderung des Quellcodes?
Dies ist IMHO der absolute Knackpunkt bei der GPL und eine wirklich genaue Klarstellung wäre sehr wertvoll.
Weiter: Was ist mit embedden (wenn mn unabhängige Interfaces zum Kompilieren benutzt hat)? Siehe hierzu unbedingt auch die Diskussionen um MySQL zur Oracle-Übernahme.

Es dürfen keine Lizenzgebühren verlangt werden.
Das ist meines Wissens nach ebenfalls nicht richtig oder viel zu ungenau. Man muss den (veränderten) Quellcode zwar kostenfrei (und dokumentiert) veröffentlichen, aber z.B. für das "Gesamtpaket" (kompiliert, konfiguriert, mit Doku, Support-Zusage, ...) darf man sehr wohl Geld verlangen. Siehe z.B. all die Linux-Distris Enterprise-Version (SLES, Redhat Linux Enterprise, ...)

GPL ist im Zusammenhang des Copyrights sicher mit Abstand die schwierigste Lizenz. Aus diesem Grund wären hier ein paar Fallbeispiele, um die Grenzen zu verdeutlichen, sehr hilfreich :-)
#zitieren
Gravatar Eberhard Wolff 09.08.2010
um 18:16 Uhr
Hallo,
ich bin kein Jurist, aber meiner Ansicht nach ist das hier geschrieben falsch (und Wikipedia sieht es auch so: http://de.wikipedia.org/wiki/GNU_General_Public_License ) . GPL sagt, dass man den Source Code mit verteilen muss. Man kann aber nach wie vor Geld für die Anwendung nehmen, ich muss halt nur den Source Code mitliefern. Allerdings kann der Empfänger des Code ihn anscheinend unter denselben Rechten weitergeben.

Das bedeutet aber, dass man den Source Code nicht unbedingt veröffentlichen muss. Wenn ich meinen eigenen Linux Kernel baue, aber den nur firmenintern nutze, muss ich den Source Code niemandem zur Verfügung stellen. Ich gebe ja den ausführbaren Code niemanden, dann muss ich auch den Source niemandem geben.

Außerdem wäre ein Hinweis auf die LGPL sinnvoll, die das Problem mit den Bibliotheken löst. Bibliotheken unter LGPL infizieren das Programm nicht, d.h. das darf closed source sein. Daher kann man auf Linux auch kommerzielle Software bekommen - die Bibliotheken sind LGPL.

HTH,
Eberhard
#zitieren