Die Woche: Nicht nur für die Lieblings-Distribution entwickeln!

Konfigurationsprogramme oder Desktops nur für eine Distribution zu entwickeln führt zu Alleingängen, die Anwender einschränken und den Fortschritt bremsen.

In Pocket speichern vorlesen Druckansicht 167 Kommentare lesen
Lesezeit: 4 Min.
Von
  • Thorsten Leemhuis

Der Cinnamon-Desktop wurde bis heute nicht so angepasst, dass er zusammen mit dem Ende März veröffentlichten Gnome 3.8 auf einem System installiert werden kann. Damit ist das im Rahmen von Linux Mint entwickelte Cinnamon ein weiteres Beispiel für Software, bei der die Entwickler nicht über den Tellerrand schauen; dadurch schaden sie sich selbst, denn dieses Vorgehen bremst die Verbreitung und gängelt Anwender.

Das zeigt sich bei Cinnarch, einer auf Arch Linux aufbauenden Linux-Distribution, die Cinnamon als Standard-Desktop einsetzte. Arch Linux pflegt neue Programmversionen schnell ein; so auch das jeweils aktuelle Gnome, was die Cinnarch-Entwickler zum wiederholten Mal vor Probleme stellte und sie letztlich zwang, sich zwischen der Kompatibilität zu Arch Linux und Cinnamon zu entscheiden. Die Entscheidung fiel im April zu Ungunsten von Cinnamon aus; Cinnarch, nach Linux Mint eines der Aushängeschilder von Cinnamon, wechselte in Folge dessen den Namen und firmiert jetzt als Antergos.

Der Distribution liegt Cinnamon nun doch bei, nachdem findige Entwickler sich des Cinnamon-Codes angenommen haben und die Probleme mit Patches beseitigt haben – die die Cinnamon-Programmierer bisher nicht integriert haben. Diese Änderungen kamen vor allem aus der Arch-Linux- und Fedora-Community: Die Fedora-Macher hatten bei der Arbeit an Fedora 19 mit denselben Schwierigkeiten zu kämpfen wie Cinnarch. Der Image-Schaden und der Verlust des etablierten Namens Cinnarch aber bleibt. Zudem kam die Nachricht, dass Gnome 3.8 und Cinnamon doch koexistieren können, für einige Anwender zu spät: Sie sind bereits enttäuscht ausgewichen und auf andere Desktops umgestiegen.

(Bild: http://www.heise.de/ct/motive/10/07/)

Cinnamon ist nur eines von mehreren Beispielen, wo eine zu enge Bindung von Distribution und Software für Probleme sorgt. Ein anderes ist der von Canonical vorangetriebene Ubuntu-Desktop Unity, dessen Programmierer sich nicht sonderlich um Kompatibilität mit dem Rest der Open-Source-Software-Welt scheren. Der Desktop ist daher in vielen anderen Distributionen nicht verfügbar oder mehr schlecht als recht integriert – Anwender, die Unity gerne auf RPM-Distribution oder einem Rolling-Release-Linux wie Arch nutzen wollen, sind die Dummen.

Wie sehr das den Fortschritt hemmen kann, zeigt ein weiteres Beispiel: Systeminitialisierung und Konfigurationstools. Die großen Distributionsfamilien – Debian/Ubuntu, Fedora/Red Hat, Mandriva, Suse – kochen seit den Anfangstagen von Linux alle ihr eigenes Süppchen, statt mit den anderen zu kooperieren und ihre Konfigurationswerkzeuge so auszulegen, dass sie auch für andere Distributionen nutzbar gewesen wären. "Das hängt von der eingesetzten Distribution ab", hörten Linux-Neulinge daher häufig als Antwort auf die Frage, wo Systemsprache, Tastaturbelegung, Zeitzone, Netzwerkschnittstellen und andere Systemparameter konfiguriert werden.

Das ändert sich langsam zum Guten – Systemd etwa nivelliert gerade zahlreiche Distributionsunterschiede, sodass eine Reihe von Konfigurationsaufgaben unter Arch Linux, Fedora, Mageia, OpenSuse und anderen Distributionen nun auf dieselbe Weise erledigt werden. Selbst zu Ubuntu sind einige Einflüsse von Systemd durchgedrungen, obwohl das mit Upstart auf ein anderes Init-System setzt. Auch der NetworkManager hat in den vergangenen Jahren vieles besser gemacht, denn er kümmert sich bei vielen Linux-Distributionen nicht mehr nur um eine einheitliche WLAN-Konfiguration, sondern auch um die LAN-Einstellungen. Damit hat er viele der distributionsspezifischen Tools ersetzt und zu einer lange überfälligen Vereinheitlichung geführt – das macht Linux-Distributionen besser und einfacher, wovon gerade Neulinge profitieren.

Solche Fortschritte sind Entwicklern zu verdanken, die ihre Software als Teil eines größeren Ganzen begreifen und sichergehen, dass ihre Programme überall gut laufen – auch außerhalb des Einsatzgebietes oder der Distribution, die den Entwickler gerade interessiert. Genau das hat Linux zu dem gemacht, was es heute ist: Das PC-Unix hat immer wieder Bereiche erobert, für die es nie gedacht war. Der Linux-Kernel etwa: Die Embedded- und Supercomputing-Welt sähe heute sicher ganz anders aus, wenn Linus Torvalds sich nicht um Architekturen jenseits des x86-PCs gekümmert hätte, für den er Linux ursprünglich entwickelt hat. (thl) (thl)