GPL: Bekenntnis zur Freiheit

12.03.2011

In vielen Diskussionen zur GNU GPL kommen auch deren Gegner zu Wort. Interessanterweise sind dies nicht lediglich Anhänger proprietärer Software, deren Kritik sich oft gegen freie Software insgesamt richtet, sondern insbesondere die Vertreter der BSD-Lizenz(en).

Der Vorwurf besteht dabei darin, dass die GPL keine „echt freie“ Lizenz sei, weil sie beispielsweise verbiete, Code in einem proprietären Projekt unter anderer Lizenz weiterzuverbreiten. Dieser Vorwurf ist zwar sachlich korrekt, geht jedoch an der Sache vorbei.

Als Allererstes muss überhaupt geklärt werden, was mit „Freiheit“ gemeint sei bzw. welche Freiheiten relevant sind. Meines Erachtens sind dies genau die, die Richard Stallman in seiner Definition Freier Software genannt hat (Anmerkung: Nummerierung der Freiheiten ausgelassen):

  • Die Freiheit, das Programm für jeden Zweck zu benutzen.
  • Die Freiheit, zu verstehen, wie das Programm funktioniert und wie man es für seine Ansprüche anpassen kann. Der Zugang zum Quellcode ist dafür Voraussetzung.
  • Die Freiheit, Kopien weiterzuverbreiten, so dass man seinem Nächsten weiterhelfen kann.
  • Die Freiheit, das Programm zu verbessern und die Verbesserungen der Öffentlichkeit zur Verfügung zu stellen, damit die ganze Gemeinschaft davon profitieren kann. Der Zugang zum Quellcode ist dafür Voraussetzung.

Beide Lizenzen, GPL und BSD, gewähren diese Freiheiten (es gibt natürlich noch weitere freie Lizenzen). In diesem Sinne ist die BSD-Lizenz also nicht freier als die GPL.

Der oben genannte Vorwurf besagt, dass GPL-Code nicht in einem Projekt verwendet werden kann, wo er unter einer anderen Lizenz steht, meist geht es dabei um proprietäre Lizenzen oder Lizenzen, die es erlauben, Code unter proprietäre Lizenz zu stellen.

Das schränkt jedoch die vier oben genannten Freiheiten nicht ein. Im Gegenteil! Code, der unter BSD-Lizenz steht, kann Verwendung finden in proprietären Projekten, die diese Freiheiten nur teilweise oder gar nicht gewähren. Derivate müssen keine freie Software sein. Damit werden die Freiheiten unterminiert.

Anders ausgedrückt: Die zusätzliche Freiheit, die GPL nicht gewährt, ist, Beihilfe zur Nichtgewährleistung der vier eigentlichen Freiheiten freier Software zu leisten. Aus meiner Sicht ganz klar ein Bekenntnis für, nicht gegen Freiheit!