Achtung! / Attention!

Diese Seite ist Teil unser alten Internetpräsenz, die nicht weiter gepflegt wird. Besuchen Sie auch unsere neue Präsenz unter http://ig.cs.tu-berlin.de.
This page is part of our former website that is not being maintained anymore. You may want to visit our new website at http://ig.cs.tu-berlin.de.


Open-Source Lizenzen (GNU GPL vs. IPL u.a.)


GNU General Public License

Die GNU General Public License [0] beabsichtigt die Freiheit von Software zu garantieren. Hierbei macht sie Aussagen über das Verändern, das Kopieren und Verbreiten dieser. Die folgenden Aussagen finden ihre Anwendung dann, wenn das Softwareprodukt eine Notiz des Copyright-Inhabers beinhaltet, die besagt es unterliegt der GNU GPL. Damit die Konsistenz nicht verloren geht und um beabsichtigten oder unbeabsichtigten Zuwiderhandlungen entgegenzuwirken, sollte dieser Vermerk in möglichst jeder Source des Gesamtproduktes zu finden sein.


Die GNU GPL macht ausschließlig Aussagen über das Verändern, Kopieren und Verbreiten GNU GPL unterliegender Software

Das Kopieren und Verbreiten von unverändertem Source-Code GNU GPL unterliegender Software ist frei möglich, allerdings an Bedingungen gebunden, die jedem Empfänger klarmachen sollen welche Möglichkeiten er in Bezug auf die empfangene Software besitzt bzw. nicht besitzt. So muß jede Kopie den Vermerk des Copyright-Inhabers sowie den Abspruch aller Garantieleistungen in Bezug auf die Software enthalten. Dieser Warranty Disclaimer besagt, daß, wenn nichts anderes vom Copyright-Inhaber festgelegt wird, der aus der Nutzung der Software entstehende Schaden vom Nutzer vollständig getragen werden muß. Außerdem ist der Copyright-Inhaber für keinerlei Schäden, die durch die Nutzung seiner Software entstehen verantwortlich, wenn wiederum nichts anderes von bestehenden Gesetzen oder vom ihm selbst festgelegt wird. Weiterhin müssen alle bestehenden zur Lizenz oder Garantie bezugnehmenden Referenzen sowie die GNU GPL selbst mit jeder Kopie verbreitet werden. Hierbei kann sich ein Verbreiter optional die Kosten des physischen Kopieraktes oder für evt. selbst definierte Garantieleistungen vom Empfänger erstatten lassen.

Das Kopieren und Verbreiten von verändertem Source-Code GNU GPL unterliegender Software ist ebenfalls unter Beachtung folgender Restriktionen frei möglich: Sämtliche Modifikationen müssen als solche sichtbar und mit ihrem Datum versehen werden. Die entscheidende Aussage hierbei betrifft allerdings den Fortbestand der Gültigkeit der GNU GPL für die modifizierte Software d.h. jede Veränderung (Erweiterung, Verwendung, Übersetzung etc.), die als Ganzes eine GNU GPL unterliegende Arbeit enthält, fällt automatisch wieder unter die GNU GPL. Somit sind alle Rechte und Pflichten einer GNU GPL unterliegenden Arbeit von dauerhafter Gültigkeit. Diese Eigenschaft wird auch als Copyleft bezeichnet. Weiterhin sollten bei interaktiven Programmen die Benutzer Informationen über Copyright, Garantieabspruch, Verbreitung unter den Bedingungen der GNU GPL sowie Bezugsquellen dieser erhalten.

Das Kopieren und Verbreiten von Object-Code einer GNU GPL unterliegenden Arbeit, ist nur dann möglich, wenn mindestens eine der folgenden Bedingungen erfüllt ist:

Der weitergegebene oder angebotene Source-Code muß hierbei außerdem alle Schnittstellen-Definitionen, sowie Scripts für die Compilation und Installation der Software enthalten, worunter verwendete Teile des Betriebsystems wie z.B. Standardbibliotheken und -werkzeuge nicht fallen. Wenn Source-Code im Netz an der gleichen Location wie der Object-Code mit äquivalentem Zugriff angeboten wird, so zäht dies als eine Distribution, welche die obigen Bedingungen erfüllt.


Freiheiten und Bedingungen bei GNU GPL unterliegender Software

Um die Konsistenz der GNU GPL in sich zu gewährleisten, ist das Kopieren, Verändern, Sublizensieren und Verbreiten von unter GNU GPL fallender Arbeit entgegen der GNU GPL ungültig und beendet alle von ihr gegebenen Rechte ( What to do if you see a possible GPL violation?). Weiterhin ist es nicht gestattet zusätzliche Auflagen zur GNU GPL hinzuzufügen, d.h. jede Sublizensierung ist ungültig. Bei Nichtverwendbarkeit der Lizenz als Ganzes aufgrund von Patenten, Gerichtsbeschlüssen etc. darf eine der GNU GPL unterliegende Arbeit nicht verteilt werden.

Es existiert Software, deren Verbreitung aufgrund von Gesetzen in unterschiedlichen Ländern, entweder gestattet oder untersagt ist. Ein Beispiel hierfür ist zum Beispiel das Gebiet der Kryptologie. Bei solchen geographischen Einschränkungen hinsichtlich des Inhalts der Arbeit, wie dem Verbot der Verteilung dieser in gewissen Ländern, müssen diese Länder gennant werden. Die GNU GPL ist diesem Fall nur in nichtgenannten Ländern gültig.


GNU GPL für nicht aufgeführte Länder

Die Free Software Foundation kann die Lizenz ändern um neue Probleme oder Besorgnisse zu umgehen. Da jede Lizenzversion eine Versionsnummer besitzt, kann eine Arbeit unter die GNU GPL einer konkreten Version gestellt werden. Sollte allerdings keine Versionsnummer genannt sein, kann jede existierende Version verwendet werden. Bei Verwendung von Arbeiten anderer Open-Source/Free-Software Lizenzen mit der GNU GPL inkompatiblen Konditionen soll vorerst die Erlaubnis des Copyright-Inhabers eingeholt werden.


Der Vergleich mit einer anderen Public License

Public Licenses lassen sich nach vielen Gesichtspunkten in verschiedene Kategorien einteilen. Oftmals ist es so, daß ein bei einer Lizenz erwähnter Punkt bei einer zweiten fehlt und damit einen völlig anderen Lebensweg einer Software, die unter den Punkten der zweiten Lizenz angeboten wird, möglich macht. Eine Unterteilung der Public Licenses könnte deshalb z.B. so aussehen [1], [3]:

Die schon vorgestellte GNU GPL ist eine Copyleft Lizenz, d.h. unter sie gestellte Software, unterliegt nach jeder Ableitung, Veränderung oder Verbreitung wieder der GNU GPL und darf nicht sublizensiert werden. Die GNU GPL sagt hierbei aber nichts über eine mögliche kommerzielle Nutzung aus - die Free Software Foundation unterstüzt diese sogar ausdrücklich [1]:

Please help spread the awareness that commercial free software is possible. You can do this by making an effort not to say ``commercial'' when you mean ``proprietary.'
Wie in diesem Statement zum Ausdruck kommt darf kommerzielle Software hierbei nicht mit proprietärer Software verwechselt werden: Kommerzielle Software kann Copyleft sein, proprietäre Software hingegen nicht. Ein Beispiel hierfür ist z.B. GNU Ada, welches kommerziell mit gewissem Support angeboten wird [1]:
When their salesmen speak to prospective customers, sometimes the customers say, ``We would feel safer with a commercial compiler.'' The salesmen reply, ``GNU Ada is a commercial compiler; it happens to be free software.''

Allerdings existieren noch wesentlich stärker eingeschränkte Copyleft Lizenzmodelle, wie z.B. die Aladin Free Public License (kein Open Source) [4], welche selbst eine kommerzielle Verbreitung der unter ihre Punkte gestellten Software verbietet.

Non-Copyleft Lizenzen sind in ihren Punkten weniger konsequent, was ihre Sublizensierung angeht. Unter sie gestellte Software läßt sich in proprietärer Software einsetzen. Ein Beispiel hierfür wäre z.B. die X11/XFree Lizenz [5], welche keine Aussagen über eine mögliche Sublizensierung macht und diese damit implizit zuläßt. Dies hat zur Folge, daß sowohl Open Source als auch proprietäre Versionen des X Window Systems existieren [1].

Ein weiter Typ von Lizenzen, die zwar eine Vermischung von Open Source Software mit proprietärer Software zulassen, aber dies nur unter bestimmten Bedingungen tun, also restriktiver als Non-Copyleft Lizenzen sind, existiert ebenfalls. Denkbar wäre z.B. eine Umkehrung von Non-Copyleft d.h. ein möglicher Urheber von proprietärer Software stellt seine Software der Open Source Gemeinde zur Verfügung und garantiert u.U. sogar noch Copyleft. Nach mehrmaligem Studieren der IBM Public License (IPL) [6], bin ich zu dem Ergebnis gekommen, daß sie eine solche Lizenz ist. Wie bei der GNU GPL wird auch hier eine "nicht-exklusive, weltweite, und gebürenfreie" Verbreitung des Source-Codes an jeden Empfänger sichergestellt (Copyleft), sowie die kommerzielle Nutzung von IPL unterstehender Software erheblich erleichtert. Sollte es hierbei nötig sein, proprietäre Software unter dieser Lizenz zu verwenden, so muß dessen Inhaber "nicht-exklusive, weltweite, und gebürenfreie" Rechte zum "Erstellen, Nutzen, Verkaufen, Anbieten zum Verkauf, Importieren sowie jeglichen Transfer" auf die Kombination von erhaltener und neuer Contibution an jeden Empfänger einräumen. Sollte eine solche Patent-Lizenz nicht vorhanden sein, dann muß sie vorerst vom verbreitenden Contributor beschafft werden, um "geistiges Eigentum zu schützen".

Wie schon erwähnt schenkt diese Lizenz der kommerziellen Verwendung ein besonderes Augenmerk. Der kommerziell verbreitende Mitarbeiter (commercial contributor) ist hierbei für alle Forderungen, die in Bezug auf erbrachte Leistungen entstehen, verantworlich und muß sämtliche Mitarbeiter (idemnified contributors) hierbei vor selben schützen.

Die IPL kann sublizensiert werden, aber nur in Übereinstimmung mit ihren Punkten. Eine Mitarbeiter kann so z.B. Software unter zusätzlichen eigenen Bedingungen in Object-Code verbreiten, muß aber angeben wo der zugehörige Source-Code, der unter den ausschließlichen Bedingungen der IPL steht, bezogen werden kann und folgenden Vermerk beinhalten muß.

Copyright C {date here}, International Business Machines Corporation and others. All Rights Reserved.

Zwischenzeitlich war ich bei der Interpretation dieser Lizenz unsicher, gerade was die Bedingungen der Vermischung von Open Source Software und proprietärer Software angeht. Diese Lizenz scheint meiner Meinung nach Open Source jedoch ähnlich zu fördern wie die GNU GPL. Die Meinung eines IBM Mitarbeiters sieht hierzu wie folgt aus:

"We're an 800-pound gorilla, but we have impeccable manners." [7]
Eric Raymond (Open Source Initiative) sagt zu der IBM Public License:
"We need more time to look it over before approving it, but it looks good." [7]

Quellen