In this article
GNU General Public License: GPLv3 erklärt
Was ist die GPL-Lizenz?
Die GPL-Lizenz ist eine freie Softwarelizenz, die es erlaubt, Software ohne Einschränkungen oder verpflichtende Zahlungen für den lizenzierten Code zu ändern oder weiterzuverbreiten. Entwickler nutzen die GPL-Lizenz, um sicherzustellen, dass ihr Code auch nach Änderungen nicht proprietär wird.
Eine GPL-Lizenz bezeichnet die GNU General Public License, die häufig für Open-Source-Software verwendet wird und 1989 erstmals von Richard Stallman verfasst wurde. Entwickler und Unternehmen nutzen sie, um zu verhindern, dass Software proprietär wird. Sie führte ähnliche, damals verfügbare Lizenzen zusammen, basiert jedoch vor allem auf der Philosophie der Free Software Foundation (FSF) und Stallmans Copyleft-Konzept für die Entwicklung und Verbreitung von Software.
Unter einer GPL-Lizenz (oder einfach GPL) können Nutzer Software ohne Einschränkungen frei verwenden, ändern oder weiterverbreiten. Ein bekanntes Beispiel für Software unter der GPL ist WordPress. Das bedeutet, dass alle den Quellcode nach Belieben verwenden, ändern oder erweitern können. Im Rahmen des WordPress-Projekts entspricht die GPL einer Art Grundrechtekatalog für die Software.
Sie gewährt Nutzern Open-Source-Rechte, darunter:
Das Recht, die Software frei herunterzuladen und auszuführen
Das Recht, die Software nach Belieben zu ändern
Das Recht, Kopien der Software weiterzuverbreiten
Das Recht, Kopien neuer Softwareversionen zu ändern und zu verbreiten
Die GPL erreicht ihre Ziele mithilfe des Copyleft-Konzepts. Als offensichtliche Abwandlung des Copyrights nutzt Copyleft Urheberrechtsgesetze, um den Open-Source-Status von Software zu sichern. Indem Entwickler die Freiheit in einer Softwarelizenz urheberrechtlich verankern, können sie sicherstellen, dass ihre Software nicht proprietär wird, wenn andere Nutzer sie ändern oder erweitern.
Was ist der Unterschied zwischen GPLv2 und GPLv3?
GPLv3 verfolgt weiterhin dieselbe grundlegende Absicht wie GPLv2, bietet aber einen strengeren Copyleft-Schutz. Die Formulierungen in GPLv3 sind umfassender und berücksichtigen technische und rechtliche Änderungen, darunter Klauseln zum internationalen Austausch von Lizenzen.
Die vier wichtigsten neuen Klauseln in GPLv3 sind:
Regelungen zur Kompatibilität – Lizenzkompatibilität ist relevant, wenn zwei separate Komponenten mit unterschiedlichen Lizenzbedingungen zu einem neuen Werk kombiniert werden. GPLv3 erleichtert den Umgang mit kompatiblen Lizenzen und geht insbesondere auf Code unter der Apache License V2.0 ein.
Digitales Rechtemanagement – Neue Klauseln sollen verhindern, dass Änderungen an GPL-Software nach Belieben eingeschränkt werden, indem Nutzer auf rechtliche Vorschriften (wie den DMCA) für technische Schutzmaßnahmen verwiesen werden.
Explizite Patentlizenzierung – Eine neue Patentklausel schützt Nutzer davor, dass nur einige Lizenznehmer von Patentrechten profitieren. Sie verpflichtet diese dazu, allen Nutzern dieselben Vorteile zu gewähren oder sicherzustellen, dass niemand mit der Software Gewinne erzielen kann.
Ausnahme für den Quellcode bei ASP – Die Klausel stellt klar, dass bei einer ASP-Implementierung der GPL kein Quellcode offengelegt werden muss, wenn Nutzer keine Kopie an Kunden weitergeben. Soll Copyleft auch für die Nutzung als ASP gelten, sollte die Affero General Public License (AGPLv3) verwendet werden.
Welche Nutzungsbedingungen gelten für die GPLv3-Lizenz?
Wenn Entwickler eine GPL-Komponente in ihrer Software verwenden, unterliegt das gesamte Werk den Nutzungsbedingungen der GPL. GPLv3 enthält spezifische Bedingungen für kombinierte Werke, die gelten können, wenn die GPL-Software mit anderem Quellcode, weiteren Komponenten oder Bibliotheken verbunden wird.
Für GPLv3-Software gelten die folgenden spezifischen Nutzungsbedingungen:
Berechtigungen – Rechte zur kommerziellen Nutzung, Verbreitung und Änderung der Software sowie zu ihrer privaten Nutzung und zur Verwendung ihrer Patente.
Bedingungen – Verpflichtung, den Quellcode offenzulegen, Lizenz- und Urheberrechtshinweise anzuzeigen, alle Änderungen anzugeben und die Bibliotheken unter derselben Lizenz zu benennen.
Einschränkungen – Angaben zu Haftung und Gewährleistung müssen im Werk enthalten sein.
Die vollständige Lizenzvereinbarung legt klar fest, wann die einzelnen Bedingungen gelten und wann Entwickler auf eine Klausel verzichten können. Außerdem enthält sie Definitionen, die Nutzern helfen, die Grenzen der in größeren Werken verwendeten Komponenten zu verstehen. Dazu gehört auch, wie sich ermitteln lässt, welche Klausel gilt, wenn Nutzer unsicher sind.
Wie verwende ich GPLv3?
Um Software unter GPL-Lizenzen zu veröffentlichen, benötigen Nutzer eine Urheberrechtsfreigabe von einer übergeordneten Stelle, etwa einem Arbeitgeber oder einer Schule. Sobald diese Freigabe vorliegt, sollte jede Datei die entsprechenden Urheberrechtshinweise enthalten und klar angeben, welche Versionen Nutzer verwenden dürfen.
Fügen Sie abschließend eine COPYING-Datei mit dem vollständigen Text der Nutzungsbedingungen der GNU GPL hinzu. Ergänzen Sie außerdem jede Datei um Lizenzhinweise und eine Nutzungserlaubnis. Die Anzeige des Urheberrechtshinweises beim Start ist optional.
Kann ich GPLv3 in kommerzieller Software verwenden?
Entwickler sollten bedenken, dass die GPL zusätzliche Einschränkungen der Software verhindern soll. Wird ein Teil einer GPL-lizenzierten Software verwendet, behält die geänderte Version dieselben Rechte. Daher sollte der Nutzer den aktualisierten Quellcode den nachfolgenden Nutzern zur Verfügung stellen – allerdings nur, wenn er die geänderte Software öffentlich veröffentlicht. GPL-lizenzierte Software kann zwar an andere Nutzer verkauft werden, deren Rechte zur Änderung und Verbreitung dürfen jedoch nicht eingeschränkt werden.
Weitere Open-Source-Lizenzen
Zu den weiteren Open-Source-Lizenzen zählen die MIT-Lizenz des Massachusetts Institute of Technology und die BSD-Lizenz der Berkeley Software Distribution mit drei Klauseln. Die GPL soll vor allem die Zusammenarbeit und kontinuierliche Weiterentwicklung durch eine Entwickler-Community fördern. Software, die zuvor unter GPLv3 lizenziert wurde, bleibt frei und darf den Wettbewerb nicht einschränken. Wenn die Freiheit eingeschränkt werden soll (auch als schwaches Copyleft bezeichnet), eignet sich die Lesser General Public License (LPGL) besser.

Mit LGPL können Nutzer den Quellcode privat halten, da sie lediglich verpflichtet sind, Änderungen an der ursprünglichen freien Bibliothek zu veröffentlichen. So können nachfolgende Nutzer künftig ausschließlich die GPL-lizenzierten Teile der Software ersetzen, ohne die Möglichkeit zu haben, die proprietären Teile zu ändern.
Verwalten Sie GPL-lizenzierte Komponenten nahtlos mit Snyk
Nachdem Sie nun die GPL-Lizenz kennengelernt haben, erfahren Sie mehr über Snyks Entwickler-zuerst-Lizenz-Compliance-Management-Tool. Es unterstützt Entwickler dabei, ihre schnellen Build- und Release-Zyklen beizubehalten und Lizenzprobleme frühzeitig im Prozess anzugehen.
Starten Sie mit Capture-the-Flag
Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Challenges lösen.