In einem der bei vielen Entwicklern beliebten Cartoons von Randall Munroe heißt es ironisch, dass die gesamte digitale Infrastruktur der modernen Welt zum Teil auf der Arbeit irgendeines Open-Source-Entwicklers aus Nebraska fuße. Gänzlich unrecht hat Munroe damit vermutlich nicht. Immerhin sind so ziemlich alle großen Open-Source-Projekte bis zu einem gewissen Grad von kleineren Projekten abhängig. Das zeigt auch ein aktuelles Beispiel, bei dem eine Lizenzänderung Hunderttausende andere Projekte in Mitleidenschaft gezogen hat.
Vor- und Nachteile von Open Source – mehr als nur kostenlose Software
Angefangen hatte es damit, dass dem Entwickler Bastien Nocera aufgefallen war, dass die Library mimemagic Teile des von ihm verwalteten Projekts shared-mime-info enthält. Grundsätzlich ist das bei Open-Source-Software natürlich kein Problem und letztlich auch erwünscht. Allerdings setzt shared-mime-info auf die freie Software-Lizenz GPL. Dementsprechend müsste auch mimemagic diese Lizenz nutzen; stattdessen wurde das Projekt jedoch unter der MIT-Lizenz veröffentlicht.
Nachdem Nocera den Maintainer von mimemagic über den Fehler informiert hatte, reagierte der prompt und veröffentlichte die Versionen 0.4.0 und 0.3.6 unter der korrekten Software-Lizenz. Gleichzeitig entfernte er frühere Versionen der Software aus dem Paketverzeichnis RubyGems. Das wiederum hatte allerdings einen unschönen Nebeneffekt für alle, die Ruby on Rails einsetzen. Denn das populäre Web-Framework ist von Version 0.3.5 von mimemagic abhängig. Dasselbe trifft auf mehr als 170 weitere Pakete zu, sodass alleine auf GitHub mehr als eine halbe Million Repositories von dem Wegfall potenziell betroffen sind.
GPL-Bestandteil fliegt raus
Praktisch wurde das Problem jetzt vor allem durch die Arbeit des Entwicklers Jon Wood gelöst. Der hat mimemagic so angepasst, dass der unter der GPL-Lizenz stehende Bestandteil nicht mehr Teil des Repositorys ist. Damit das funktioniert, muss der fehlende Bestandteil allerdings händisch aus dem Ursprungsprojekt geladen werden. Dafür kann mimemagic jetzt erneut unter der MIT-Lizenz veröffentlicht werden. Das ist vor allem für Firmen wichtig, die auf Basis von Ruby on Rails proprietäre Software entwickeln, was nach der GPL untersagt wäre.
Dauerhaft ist das allerdings für den Ruby-on-Rails-Entwickler George Claghorn keine Lösung. „Ich glaube nicht, dass wir eine harte Abhängigkeit von einer Bibliothek beibehalten können, die eine manuelle Installation der Datenbank erfordert“, so der Core-Entwickler auf GitHub. Das Projekt sucht daher weiterhin nach einer Alternative.
Ebenfalls interessant: 5 Mythen über Open Source