Die Woche: Zehn Jahre bei Fedora

@ctmagazin | Kommentar

Bei der Mitarbeit an einer Linux-Distribution lässt sich viel über Linux lernen. Die Zusammenarbeit mit anderen Entwicklern und Firmen kann aber auch frustrierend sein, wie c't-Redakteur Thorsten Leemhuis in zehn Jahren Fedora-Mitarbeit erfahren hat.

Herzlich Glückwunsch, Fedora-Projekt! Zehn Jahre ist es jetzt her, dass ihr die erste Version Eurer Linux-Distribution veröffentlicht habt. Danke für alles, was ihr zur Linux- und Open-Source-Welt beigetragen habt, den die sähe ohne euch sicher anders aus. Und auch herzlichen Dank für die Freunde, die ich bei euch gefunden habe, und alles, was ich bei euch lernen durfte. Denn ohne Fedora wäre ich heute vermutlich kein Heise-Redakteur, der vornehmlich über Open-Source-Software schreibt.

Frustrierend waren sie allerdings oft, die ersten Jahre des Fedora-Projekts. Zu der Zeit gehörte ich zu einem der aktivsten Freizeit-Entwickler und habe vorübergehend sogar das Fedora Extras Steering Committee (FESCo) geleitet – dem Vorläufer des heutigen Fedora Engineering Steering Committee, dem technischen Leitungsgremium der Distribution.

Auf Mailinglisten oder bei IRC-Meetings ging es dabei oft zu wie beim Verein um die Ecke: Endlose Diskussionen über Details, Uneinigkeit bei der Lösung technischer Probleme und Streitereien zwischen Leuten, die sich einfach nicht grün waren. All das, was man noch heute auf Mailinglisten von Fedora und anderen Open-Source-Projekten sieht. Das hat immer mal wieder zu der Überlegung geführt: Ach, geht doch alle weg, ich mache lieber meine eigene Distribution auf Fedora-Basis. Zum Glück habe ich diesen naiven Gedanken nie umgesetzt, denn solch ein Schritt hätte einen Rattenschwanz an Arbeit nach sich gezogen.

Vergrößern Die ersten Fedora-Entwickler begegneten dem holprigen Projekt-Start auch mit Humor.Bild: Erfundenes IRC-Protokoll

Andere haben es gewagt – darunter Fuduntu, das einige nette Ideen umgesetzt hat, die Fedora besser gemacht haben. Die Linux-Distribution wurde aber mittlerweile eingestellt. Viele der guten Ideen sind dadurch auf der Strecke geblieben, denn ähnlich wie der Fedora-Ableger Korora macht sich meist kaum ein Entwickler die Mühe, die Verbesserungen in Fedora einzubringen. Irgendwo mitzuarbeiten ist nämlich nicht nur viel anstrengender, sondern bringt auch weniger Ruhm und Ehre. Das ist sicher einer der Hauptgründe, warum es so viele Linux-Distributionen und Desktop-Oberflächen gibt, die alle irgendwo glänzen, aber auch größere Mankos zeigen.

Nervenzehrend war auch der Kampf mit Red Hat: Wir Freizeit-Entwickler blieben im ersten Fedora-Jahr praktisch außen vor, obwohl Fedora doch als "Community-Projekt" angetreten war – ein erfundenes IRC-Protokoll beschreibt die damalige Situation nicht nur amüsant, sondern auch präzise. Durch die steten Bemühungen einiger Freizeit-Entwickler und Hilfe kluger Köpfe innerhalb von Red Hat wurde es dann nach und nach besser. 2006/2007 bekamen dann auch endlich Entwickler außerhalb von Red Hat Zugriff auf Komponenten der Distribution, als die Linux-Distribution Fedora Core mit dem Add-On-Depot Fedora Extras zu Fedora verschmolz.

Durch diese und andere Verbesserungen darf sich Fedora mittlerweile zu Recht als Community-Projekt bezeichnen. Klar, Red Hat ist Hauptsponsor und hat über den Vorsitzenden des Fedora Boards ein Veto-Recht – das Unternehmen hat davon aber noch nie Gebrauch gemacht und sich auch sonst als verlässlicher und guter Partner der Open-Source-Community erwiesen. Auch die Zusammenarbeit zwischen Red-Hat- und Freizeit-Entwicklern verläuft dieser Tage recht gut; Querulanten gibt es auf beiden Seiten.

Das größte Problem ist vielmehr: Bezahlten Fedora-Entwicklern stehen mehr Zeit und Ressourcen zur Verfügung, wodurch sie die Weiterentwicklung des Projekts stärker beeinflussen. Dabei gehen sie manchmal etwas brüsk vor; sie sorgen aber auch dafür, dass Entscheidungen getroffen werden, statt jahrelang über das beste Init-System zu debattieren.

Red Hat hat durch Fedora auch gelernt, besser mit der Open-Source-Community zusammenzuarbeiten. Die Entscheider des Unternehmens meiden Alleingänge, wie Canonical gerade einen mit Mir wagt. Sie haben gelernt, dass Open-Source-Entwicklung ohne Rückendeckung der Community extrem schwer ist.

Bei einer Distribution mitzuarbeiten schärft den Blick für das große Ganze. In ein selbst gestricktes System kann man schnell mal einen unsauberen Hack einbauen, um ein Problem zu umschiffen; doch wenn zehn- oder hundertausend Nutzer sich jahrelang auf den Hack verlassen sollen, überlegt man sich zweimal, ob man nicht besser eine ordentliche Lösung entwickelt. Auch Patches erscheinen dann plötzlich in einem anderen Licht: Eine Quellcode-Änderungen in ein Software-Paket einzubauen ist nicht weiter schwierig – wenn man die Änderung aber jahrelang für jede neue Version der Software anpassen muss, weil die Upstream-Entwickler den Patch ablehnen, dann wägt man Aufwand und Nutzen plötzlich ganz anders ab.

Auch über Patentprobleme, Lizenzen und vieles andere lernt man eine Menge bei der Arbeit an einer Distribution. Daher rate ich Anwendern, die Linux und Open-Source-Software nicht nur nutzen, sondern auch verbessern wollen: Steigt in die Distributionsentwicklung ein! Dazu braucht man nicht einmal Programmierkenntnisse, die hatte ich damals auch nicht – ich habe bei Fedora einige Pakete betreut und viel Organisationsarbeit geleistet. Distributionen bieten noch zahlreiche andere Wege zum Mitmachen für Nicht-Programmierer, denn auch um Fehlersuche, Bugtracking, Artwork, Server-Infrastuktur, Übersetzungen, Dokumentation und viele andere Dinge muss sich jemand kümmern.

Und nein, es muss nicht unbedingt Fedora sein. Ich freue mich genauso, wenn jemand bei OpenSuse mitmacht. Beide haben aber ein Geschmäckle: Große Unternehmen sind involviert und üben eine gewisse Kontrolle aus. Wem das nicht schmeckt, dem rate ich zu Debian. Wer bei einer den drei großen Distributionfamilien mitmacht, kann sich sicher sein, dass viele Leute von der eigenen Arbeit profitieren – nicht nur, weil diese Distributionen viele Nutzer haben, sondern auch, weil sie die Basis für viele andere Distributionen sind. (thl)

P.S.: Die Zeit bei Fedora war schön, aber seit ein paar Jahren bin ich leider nicht mehr sonderlich im Projekt involviert. Prioritäten haben sich verschoben und die freie Zeit ist knapper geworden; zudem möchte ich einen Interessenskonflikt vermeiden, seit ich bei c't nicht mehr vornehmlich über PC-Hardware, sondern über Linux und Open-Source-Software schreibe.

Kommentare

Kommentare lesen (35 Beiträge)

Anzeige