07.Oct 2020

GPL, MIT, WTFPL – häh?

Wer Open-Source-Software entwickelt, befasst sich auch mit Lizenzen. Weil das Thema immer wieder aufkommt und auch für die Förderprojekte des Prototype Fund wichtig ist, hat unser Teammitglied Thomas auf den Datenspuren 2020 einen Vortrag gehalten, in dem er erklärt, was Lizenzen sind, welche Unterschiede es zwischen ihnen gibt und für welche Arten von Softwareprojekten sie sich eignen. Hier haben wir das Wichtigste noch einmal zum Nachlesen zusammengefasst. Fangen wir vorn an:

Was sind Open Source und Freie Software?

Mit Freier Software erhalten Nutzer*innen die Nutzungsrechte an Software ohne Vorbehalte und Einschränkungen, denn diese werden pauschal für alle eingeräumt. Die zwei wesentlichen Säulen sind hier frei verfügbare Quelltexte und das Recht auf freie Nutzung.

Open-Source-Software hingegen ist Software, “deren Quelltext öffentlich ist und von Dritten eingesehen, geändert und genutzt werden kann.” Im Vordergrund steht der praktische Nutzen einer frei verfügbaren Softwareinfrastruktur für die Allgemeinheit. Dazu gehören ein freier Softwaremarkt und die Ermöglichung einer kollaborativen Entwicklungsmethode.

Freie Software sieht Open Source als eine Bedingung an, ist auf die Kontrolle durch Nutzer*innen fokussiert und stellt vor allem soziale, politische und ethische Anliegen in den Vordergrund. Das Recht auf freie Nutzung wird dabei mit Softwarelizenzen geregelt und abgesichert.

Was sind Lizenzen?

Eine Lizenz ist generell eine Genehmigung, Dinge zu tun, die ohne diese nicht erlaubt wären. Mit einer Lizenz wird also ein Recht auf Nutzung eingeräumt. Eine Softwarelizenz ist ein Vertrag, mit dem bestimmte Nutzungsrechte an einer urheberrechtlich geschützten Software überlassen und/oder beschränkt werden. Sie kann dabei u. a. Dinge wie das allgemeine Nutzungsrecht sowie das Recht auf Veränderung, Weiterverbreitung und Linking regeln. Außerdem ergeben sich aus ihr Pflichten sowie Nutzungsbedingungen.

Für die private Anwendung von Programmen spielen Lizenzen keine Rolle. Die manchmal angezeigten End User License Agreements (EULA) sind keine Lizenzen – und übrigens nur dann gültig, wenn sie den Nutzer*innen vor dem Kauf einer Software bekannt waren.

Kleine Geschichte der Freien und Open-Source-Lizenzen

Noch in den 1950er und 1960er Jahren wurde Software vor allem im akademischen Bereich geschrieben und meist als Public-Domain-Software mit dem Quellcode geteilt. Die bei dieser Art der Softwareentwicklung vorherrschenden Prinzipien wie Offenheit und Kollaboration sollten später zu zentralen Bestandteilen der Hacking-Kultur werden. Ab den späten 1960er Jahren wurde Software dann zunehmend zu einer Bezahlware und seit 1974 unterliegt sie dem Urheberrecht.

In der Folge begannen Computer- und Softwarehersteller mit der Vermarktung von eingeschränkt lizenzierter Software, sodass die meisten neuen Softwareentwicklungen durch Urheberrechte etc. beschränkt wurden. Viele Firmen verbreiteten lediglich noch die ausführbaren Maschinencodes, nicht aber mehr ihre Quellcodes (mehr dazu hier).

Die Geburt von GNU und Copyleft

1983 gründete Richard Stallman das GNU-Projekt und entwarf das Copyleft-Prinzip. Dieses beinhaltet, dass alle, die die Software (mit oder ohne Änderungen) weiter verteilen, auch die Freiheit zum Weitergeben und Verändern weitergeben müssen. Es bildet die Grundlage aller GNU-Lizenzen (mehr dazu hier). Als eine Copyleft unterstützende Organisation wurde 1985 die Free Software Foundation gegründet. Sie gibt dem GNU-Projekt den administrativen, rechtlichen und finanziellen Rahmen.

1985 veröffentlichte Stallman den Editor Emacs und legte die “GNU Emacs Copying Permission Notice” bei, die allen Nutzer*innen das Recht einräumt, Kopien und Modifizierungen des Programms zu machen, solange sie nicht das Recht am Eigentum an der veränderten Version von Emacs erheben. Darauf aufbauend wurde 1986 die “GNU Emacs General Public License” als erste freie Softwarelizenz veröffentlicht. Ende desselben Jahres änderte Stallman den Emacs-Copyright-Vermerk in eine “Copyleft”-Lizenz, die für jede Software gelten kann. Dies bedeutete ein Novum, da bis zu diesem Zeitpunkt noch jedes Programm seine eigene Lizenz hatte.

Die erste GNU General Public License (GPL) wurde 1989 in der Version 1.0 veröffentlicht. Die Version 2 beinhaltet bereits die “Liberty or Death”-Klausel, die besagt, dass Lizenznehmer*innen den Quellcode nur dann weiterverbreiten dürfen, wenn sie alle in der Lizenz festgehaltenen Pflichten erfüllen können, unabhängig von Verpflichtungen, die aus anderen Lizenzen oder Verträgen entstehen könnten. 1992 veröffentlichte Linus Torwalds den Linux Kernel unter der GPL. 

Die Verwaltung der University of California, Berkeley, veröffentlichte dann 1988 die BSD-Lizenz in ihrer ersten Version. Sie war die erste “freizügige Open-Source-Lizenz” und unterscheidet sich insofern von der GPL, dass sie keinen Copyleft-Vermerk enthält. Somit ist niemand verpflichtet, den Quellcode mit zu veröffentlichen, lediglich der Lizenz-Vermerk muss immer erhalten bleiben.

Kategorien von Open-Source-Lizenzen

Im Lizenz-Center des “Institut für Rechtsfragen der Freien und Open Source Software” (ifrOSS) sind insgesamt 275 Open-Source-Lizenzen aufgelistet. Sie reichen von Public Domain über Permissive Licenses (z. B. BSD) und (schwachem) Copyleft bis zu nicht kommerziellen Lizenzen. Eine Übersicht dazu findet ihr hier. Jede*r kann eine Lizenz nach den eigenen Bedürfnissen entwickeln und veröffentlichen – dies führt dazu, dass die Zahl der freien Lizenzen immer größer wird. Ohne eine ausgezeichnete Lizenz gilt übrigens nach wie vor das Urheberrecht. Hier findet ihr eine Übersicht der beliebtesten Lizenzen. 

Verbreitung und Beliebtheit

Noch 2003 waren auf SourceForge die Copyleft-Lizenzen sehr viel weiter verbreitet als die freizügigen Lizenzen. Ein 2015 auf Github veröffentlichter Blogpost zeigt jedoch, dass Mitte der 2010er Jahre freizügige Lizenzen im Verhältnis an Verbreitung gewonnen haben.

In den letzten Jahren waren die freizügigen MIT- und die Apache-Lizenz die beiden am häufigsten genutzten Lizenzen. Copyleft-Lizenzen werden etwas weniger angewendet, aber nur im Vergleich zu den anderen Open-Source-Lizenzen. Ein Grund dafür ist, dass Projekte sich zunehmend für duale Lizenzen (Mehrfachlizenzierung) entscheiden. Mit einer Mehrfachlizenzierung kann Software zum Beispiel kommerziell vertrieben und gleichzeitig von einer Community betreut werden. Auch können andere restriktive Erweiterungen benutzt werden.

Beim Prototype Fund haben wir 2020 erstmals verglichen, wie viele bei uns geförderte Projekte welche Lizenz benutzen. Hier zählten GPL und MIT zu den meistgenutzten Lizenzen.

Was geschieht bei Verstößen?

Wer in Deutschland einen Lizenzverstoß feststellt, muss als erstes mahnen und verlangen, dass der Vertrieb nur unter den vorausgesetzten Bedingungen erfolgt. Je nach Lizenz bedeutet das, dass der Quellcode unter der entsprechenden Lizenz verfügbar gemacht werden muss – bei strengen Copyleft-Lizenzen auch dessen Anpassungen und Erweiterungen.

Zudem kann die Erstattung von Mahnkosten und Schadensersatz gefordert werden. Die Beklagten müssen dabei Auskunft über Kund*innen geben, damit die Distributionskette nachvollzogen werden kann.

Wenn daraufhin nichts passiert, kann aufgrund einer “dauerhaften Verletzung des Copyrights” eine vorläufige einstweilige Verfügung beantragt werden. Ein Einspruch der Gegenseite würde dann zu einem Gerichtsverfahren führen.

Eine Klage gegen eine solche Urheberrechtsverletzung kann in Deutschland aber nur von den Urheber*innen beziehungsweise deren rechtlichen Vertreter*innen geführt werden. Die klagende Partei muss also maßgeblich an der Entwicklung der Software beteiligt gewesen sein.

Wie ihr seht, haben Lizenzen es in sich! Bevor ihr entscheidet, welche Lizenz die richtige für euer Projekt ist, überlegt euch also, was ihr selbst damit erreichen wollt und schaut gegebenenfalls, für welche Lizenzen ähnliche Projekte sich entschieden haben. Wir hoffen, wir haben euch einen kleinen Überblick verschaffen können. Code on!

GPL, MIT, WTFPL – häh?