Login
Newsletter
Werbung

Mi, 12. August 2009, 11:42

Erster Ansatz zu einem Source Service vorgestellt

Der maßgeblich am Opensuse Build Service beteiligte Adrian Schröter will mit dem »Source Service« die Erstellung von Binärpaketen weiter vereinfachen.

Der OpenSuse Build Service ermöglicht ein einfaches und schnelles Erstellen von Binärpaketen für mehrere verbreitete Distributionen, die direkt aus dem offiziellen Quellcode von Projekten generiert werden. Auch ganze Distributionen, die von OpenSuse abgeleitet sind, lassen sich mit dem Build Service erzeugen, so wurde OpenSuse 11.1 erstmals vollständig mit dem Build Service erstellt. Binärpakete lassen sich für einige der populärsten Linux-Distributionen generieren. Neben OpenSuse sind das SUSE Linux Enterprise, CentOS, Debian, Fedora, Mandriva, Red Hat Enterprise Linux und Ubuntu.

Die Generierung von Paketen erforderte bisher aber immer noch die manuelle Eingabe einer Reihe von Daten. Insbesondere musste eine spec-Datei erstellt werden, die den Konventionen von Opensuse entspricht. Spec-Dateien werden von allen RPM-basierten Distributionen benötigt, um die Pakete zu definieren. Äquivalente Dateien werden für die Erzeugung von DEB-Paketen benötigt. Der Build-Service kann diese jedoch aus der spec-Datei generieren.

Spec-Dateien müssen bei einfachen Softwarepaketen nicht besonders kompliziert sein, doch können sie durchaus ein Hindernis darstellen, dass nicht mehr Anwender den Build Service nutzen. Der von Adrian Schröter konzipierte Source Service könnte diese Hürde beseitigen, indem er alle benötigten Angaben automatisiert ermittelt.

Wie Adrian Schröter in seinem Blog erklärt, ist das Ziel des Source Service, mit einem Klick in den meisten Fällen ein installierbares Binärpaket zu erhalten. Dazu hat der Entwickler davon Abstand genommen, ein universelles Tool zu schreiben. Die erste Version seines spec-Datei-Generators ist auf Qt-Projekte spezialisiert und erzeugt die Datei aus einer qmake-Datei. Es handelt sich dabei nur um eine modifizierte Version von qmake. Doch diese genügt, um den Build-Service mit einer sehr kleinen XML-Datei zu steuern, die lediglich die Downloadquelle des Quellcodes und die Angabe des Dienstes »generator_qmake« benötigt, um Binärpakete zu erzeugen.

Der Code von Schröter ist über SVN und das Projekt openSUSE:Tools:Devel erhältlich, wofür ein Account benötigt wird. Künftige Erweiterungen liegen auf der Hand: Der Quellcode könnte direkt aus Repositorien bezogen werden, Prüfsummen wie MD5 oder PGP verifiziert werden, und spec-Dateien könnten aus zahlreichen anderen Quellen wie cmake, autoconf, Ant und Perl CPAN generiert werden. Zur Zeit funktioniert selbst der qmake-Generator nur eingeschränkt. Die Angaben zur Lizenz, zur Kategorie und die Beschreibung werden noch nicht ermittelt. Wichtige Dinge wie die Behandlung von RPM-Gruppen, Aufteilung von Paketen und Zuordnung von Paket- zu Bibliotheksnamen fehlen noch weitgehend. Dennoch könnte das Programm dazu beitragen, dass in absehbarer Zeit die Zahl der auf einfache Weise installierbaren Binärpakete für alle Linux-Distributionen stark zunimmt.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung