AA_leather_swer_rock_sxc_1208703.jpg

© Swer_rock, sxc.hu

Nahtlos eingepasst

Software-Installation aus systemeigenen und anderen Quellen

21.11.2012
Die Integration von Listaller in die PackageKit-Infrastruktur eröffnet neue Perspektiven auf das plattformübergreifende Installieren von Software.

Das Paketmanagement von Linux symbolisiert für einerseits den ultimativen Vorteil gegenüber Windows. Auf der anderen Seite scheitern Einsteiger trotz aller unbestreitbaren Vorteile einer konsistenten Paketdatenbank regelmäßig am an Tatsache, dass verschiedene Konzepte zur Software-Installation unter Linux existieren. Die zwei weit verbreiteten, jedoch zueinander inkompatiblen Systeme RPM und DEB sowie die Möglichkeit, Software aus den Quellen zu übersetzen, tragen viel zu Unübersichtlichkeit bei.

Da wundert es kaum, dass es seit Jahr und Tag Bemühungen gibt, Einsteiger von den Details der einzelnen Formate fernzuhalten und ein übergreifendes Paketformat nebst zugehörigen Werkzeug zu implementieren, das durch die Bank auf den meisten Distributionen funktioniert. Zu den aktuellen und ehemaligen Vertretern der Kategorie gehören Autopackage, MojoSetup oder ZeroInstall.

Alleskönner

Der von Richard Hughes seit 2007 entwickelte Schnittstelle zum Paketmanagement, PackageKit [1], kommt in diesem Zusammenhang ebenfalls eine zentrale Bedeutung zu. Sie stellt ein Interface für unterschiedlichste Paketsysteme bereit (siehe Kasten "Mit den richtigen Rechten").

Mit den richtigen Rechten

Das seit 2007 von Richard Hughes entwickelte PackageKit arbeitet als Abstraktionsschicht zu den unterschiedlichen Paketverwaltungen. Dabei nutzt es PolicyKit zum Überprüfen der Berechtigungen und D-Bus für die Interprozesskommunikation. Ein Daemon startet bei Bedarf zum Abwickeln der Aktionen. Alternativ zu D-Bus kommunizieren Applikationen über eine eigens geschriebene Bibliothek mit dem Framework.

Hughes hat in einer sehr ausführlichen Präsentation alle wichtigen Details rund um die Software und deren Idee zusammengestellt (PDF, [9]). Darin kritisiert er, dass die bisherige Entwicklung von Paketformaten zwar technisch erstklassige Produkte hervorgebracht habe, der Anwender aber oft verloren vor konfusen Dialogen oder kryptischen Fehlermeldungen stünde. Die Idee von PackageKit: Es will in einer weiteren Schicht für mehr Klarheit und Einfachheit sorgen.

Während anfangs nur Fedora (ab F9) und Foresight Linux 1.4.1 die Technik nutzten, wechselte Kubuntu als erste Debian-basierte Distribution ab Version 9.04 auf PackageKit. Heute sind die KDE-Frontends Apper und KPackageKit und das Gnome-Frontend Gnome-Package mit der Schnittstelle kompatibel.

Für die Entwicklung von Listaller ist das Projekt Autopackage von besonderer Bedeutung. Es stammt aus dem Jahr 2002 und hatte die einfache Installation von (Third-Party-)Software zum Ziel, unabhängig von der verwendeten Linux-Distribution. Autopackage funktioniert relativ einfach: Im Prinzip verbirgt sich dahinter ein Shell-Skript, das das zu installierende Programm bereits enthält und das – bis auf die Bash – keine zusätzliche Software braucht.

Idealerweise sollte der gesamte Installationsprozess keine Interaktion mit dem Benutzer erfordern. Abhängigkeiten lösen die Paketverwaltungen in der Regel automatisch auf.

Zweckehe

Allerdings ging es mit dem Projekt nicht wie gewünscht voran. Mike Hearn hat die Software acht Jahre lang entwickelt. Im Jahr 2010 stellte er jedoch die Arbeit daran ein und bündelte seine Kräfte mit dem Projekt Listaller [2]. Letzteres startete Matthias Klumpp 2007 als Experiment, um herauszufinden, wie aufwändig es wäre, ein universelles Interface zu entwickeln, das alle unter Linux relevanten Arten von Software verwaltet.

Durch den Zusammenschluss mit Listaller erschienen den Entwicklern einige Bestandteile von Autopackage obsolet. Auch das Format der Pakete passten sie an die Spezifikation von Listaller an. Trotz einiger bemerkenswerte Fortschritte insbesondere bei der aktuellen Version 0.5.5 hat das neue Projekt bisher allerdings den experimentellen Status nicht verlassen: Es gibt also noch keine "offizielle" Version der Software.

Der Entwickler arbeitet übrigens parallel für OpenSuse am AppStream-Projekt ([3],[4]) mit und gehört zu den Upstream-Entwicklern von PackageKit. Sein Listaller-Projekt hat kein geringeres Ziel, als das Installieren eines Paketes auf verschiedenen Distributionen so einfach und sicher wie möglich zu machen – und das bei bestmöglicher Integration in die Mutterdistribution. Zusätzlich kooperiert Klumpp mit dem Projekt ZeroInstall.

Seit der Version 0.3a arbeitet das Programm Listaller mit PackageKit als Backend zusammen und profitiert somit über dessen Schnittstelle zu PolicyKit in Bezug auf die Rechteverwaltung. Außerdem ermöglicht diese Kooperation, dass Frontends, die auf PackageKit aufsetzen, zusätzlich die mit Listaller installierten Pakete sehen und verwalten.

Das Listaller-eigene Paketformat IPK erlaubt es, auf sehr einfache und flexible Weise Software auf beliebigen Distributionen zu installieren. Matthias Klumpp betont allerdings immer wieder, dass Listaller keinesfalls das bestehende Paketmanagement ersetzen soll, sondern es lediglich ergänzt.

Die Skripte des Listaller-Paketformats IPK weisen eine ähnliche Syntax auf wie die von Debian-Paketen. Die Software komprimiert die Packages automatisch mit LZMA und ermöglicht es außerdem, sie mit GPG zu signieren. Seit der Version 0.4b lagern große Teile der ursprünglichen Funktionen in separaten Bibliotheken, was das Schreiben neuer Frontends in anderen Sprachen erleichtert.

Einen in älteren Versionen von Listaller noch vorhandenen internen Software-Katalog hat der Entwickler inzwischen mit der Begründung gekippt, dass es keinen Sinn mache, den inzwischen sehr guten Software-Stores der Distributionen (etwa Ubuntu Software Center) eine weitgehend ähnliche Technologie mit gleichen Funktionen gegenüber zu stellen. Über einen distributionsübergreifenden Store für Kaufsoftware denkt Klumpp hingegen durchaus nach und will dazu in Zukunft mit dem Pappi-Projekt [5] kooperieren.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Related content

Kommentare

Infos zur Publikation

title_2014_08

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...
Öhm - wozu Benutzername, wenn man dann hier mit Klarnamen angezeigt wird?
Thomas Kallay, 03.07.2014 20:30, 1 Antworten
Hallo Team von Linux-Community, kleine Zwischenfrage: warum muß man beim Registrieren einen Us...
openSUSE 13.1 - Login-Problem wg. Fehler im Intel-Grafiktreiber?
Thomas Kallay, 03.07.2014 20:26, 8 Antworten
Hallo Linux-Community, habe hier ein sogenanntes Hybrid-Notebook laufen, mit einer Intel-HD460...
Fernwartung für Linux?
Alfred Böllmann, 20.06.2014 15:30, 7 Antworten
Hi liebe Linux-Freunde, bin beim klassischen Probleme googeln auf www.expertiger.de gestoßen, ei...