Open Source im professionellen Einsatz

Aktueller Überblick über freie Software und ihre Macher

Projekteküche

Die Leckerbissen aus der Welt der freien Software sind dieses Mal: Yast-2-Portierung auf Debian, KDE 4 und Qt 4, Bluetooth-Headsets und die Fehlerjagd beim Debian-Projekt. Außerdem: Woher kommen eigentlich die Debian-CDs? Als Nachtisch gibt es Fanta-Schnitten.

Abbildung 1: Das Partitionierungsmodul von Yast 2 teilt Festplatten auf und legt Mountpoints fest. Das Projekt Yast4Debian hat diesen Programmteil bereits erfolgreich portiert.

Abbildung 1: Das Partitionierungsmodul von Yast 2 teilt Festplatten auf und legt Mountpoints fest. Das Projekt Yast4Debian hat diesen Programmteil bereits erfolgreich portiert.

Als Yast 2 zum letzten Mal Aufsehen erregte, betraf dies seine Lizenz: Kurz nach der Suse-Übernahme stellte Novell das umfassende Konfigurationswerkzeug der Distribution unter die GPL. Die Yast-2-Quellen waren zwar bereits vorher frei zugänglich, die Lizenz schränkte Verwendung und Weiterverbreitung des Programms jedoch ein.

Yast4Debian

Novell hatte diesen Schritt damit begründet, dass man Yast 2 zu einem weitläufigen Standard machen wolle. Deswegen sollten die verschiedenen Distributoren den Quellcode für ihre Produkte entsprechend anpassen und als universelles Werkzeug für die Konfiguration des Systems etablieren. Das erste größere Projekt, das sich dieser Aufgabe annahm, war Debian. Dieser Distribution fehlt bislang ein zentrales Konfigurationsprogramm, das von null an sehr aufwändig zu programmieren gewesen wäre. Das Projekt Yast4Debian portiert derzeit die mit Suse 9.1 ausgelieferte Yast-2-Version; ein Upgrade auf die Suse-9.2-Version steht bevor.

Yast 2 besteht aus der Bibliothek Libyutil, einem Programmkern und diversen Zusatzmodulen. Beim Kern handelt es sich wiederum nur um einen Interpreter für die Yast-2-eigene Programmiersprache YCP, die diverse Elemente der verschiedenen gängigen Skriptingsprachen vereint und zum Erstellen neuer Module dient. Sowohl die Yast-2-Bibliothek als auch der Kern sind in C++ geschrieben und mit den Autotools vorkonfiguriert, sodass sie sich auf jedem Linux-System kompilieren lassen.

Der Hauptaufwand bei der Portierung betrifft also die Module. Unter diese Kategorie fallen auch die Bedienoberflächen, von Suse bereits bekannt sind das Text-Interface Yast-2-Ncurses und das grafische Yast-2-Qt. Beide Module lassen sich ebenfalls problemlos auf anderen Linux-Systemen kompilieren. Die Portierung der restlichen Komponenten erweist sich jedoch als mühselig. Die zahlreichen Module - sogar die einzelnen Yast-2-Icons bilden jeweils ein eigenes - stehen häufig in Abhängigkeiten zueinander, die auf den ersten Blick wenig Sinn ergeben.

Wer beispielsweise das Partitionierungsmodul kompilieren will, braucht zunächst das Modul Autoyast. Dies zieht einen Rattenschwanz weiterer Abhängigkeiten hinter sich her, denn es setzt das X11-Konfigurationsmodul voraus, das wiederum das X11-Maus- und das X11-Keyboard-Konfigurationsmodul verlangt. Außerdem hängt Autoyast vom Yast-Online-Update-Modul und vom Konfigurationsmodul für den Bootloader ab.

Unter der Haube

Noch komplizierter, als Yast 2 mit den Modulen zu kompilieren, ist es, die auf Suse ausgerichtete Infrastruktur an die Zieldistribution anzupassen. Im Falle von Debian betrifft dies beispielsweise das Paketmanagement. Ein Yast-2-Modul kommuniziert mit der RPM-Datenbank, unter Debian kommt aber das Debian-Paketformat zum Einsatz. Andere Module hingegen bedürfen glücklicherweise geringerer Modifikationen, etwa die Benutzerverwaltung. Weil Debian wie Suse und mittlerweile fast alle anderen Distributionen dabei mit »shadow« verschlüsselte Passwörter einsetzt, können die Entwickler das Modul beinahe unverändert übernehmen.

Erste Erfolge kann Yast4Debian schon aufweisen; außer dem Benutzerkonfigurationsmodul funktioniert nunmehr auch der Partitionierer (Abbildung 1) einwandfrei. Doch der bevorstehende Umstieg auf Yast 2 aus der aktuellen Suse-Version bringt viel neue Arbeit mit sich. Wer sich an der Portierung beteiligen möchte, findet auf der Projekt-Homepage [7] eine Anlaufstelle.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook