Aus LinuxUser 02/2018

Paketmanagement mit XBPS bei Void Linux

© scanrail, 123RF

Gut eingepackt

Die Linux-Distribution Void pflegt mit XBPS ein eigenes Paketmanagementsystem. Es arbeitet rasend schnell und erlaubt den Bau eigener Pakete.

Paketverwaltungen bilden das Herzstück aller Linux-Distributionen. Die Paketverwaltung regelt bei der Installation von Software die Verteilung der Komponenten des Pakets in die Verzeichnisstruktur des Filesystem Hierarchy Standard (FHS) [1], den fast alle Distributionen seit 1993 verwenden.

In den Aufgabenbereich einer Paketverwaltung fallen neben der Installation der eigentlichen Anwendungspakete meist auch das Nachziehen der benötigten Abhängigkeiten sowie das Aktualisieren und Entfernen von Paketen. Zudem lässt sich der Paketbestand nach verschiedenen Kriterien durchsuchen.

Die am häufigsten anzutreffenden Paketverwaltungssysteme unter Linux bedienen die Formate DEB und RPM. Daneben gibt es neben Exoten wie Nix unter anderem Pacman bei Arch Linux, Portage bei Gentoo, Eopkg bei Solus oder XBPS bei Void. Mit Letzterem beschäftigt sich dieser Artikel.

XBPS

XBPS steht für X Binary Package System und entstand ursprünglich als Ersatz für Pkgsrc [2] bei NetBSD. Im Laufe der Zeit entwickelte sich aus diesem Vorhaben die Rolling-Release-Distribution Void, über die wir in LU 11/2017 bereits berichteten [3]. Man darf XBPS also mit Fug und Recht als Herzstück dieser Distribution bezeichnen.

Die von XBPS verwalteten Pakete tragen die Endung .xbps. Aus technischer Sicht handelt es sich wie bei Debian-Paketen um mit Xz gepackte TAR-Archive. Die Basis von XBPS bilden die Repositories. Das System unterstützt neben lokal gespeicherten Repos auch via HTTP(S) oder FTP angebundene Paketquellen von entfernten Servern.

Die System-Repositories finden sich unter /usr/share/xbps.d/, von Anwendern hinzugefügte unter /etc/xbps.d. Die Inhalte der offiziellen Paketquellen sind mit RSA signiert, die enthaltenen Metadaten, Dateien und Binärpakete mit SHA256 gehashed. Subrepositories für Non-Free-Pakete oder Multi-Arch-Umgebungen lassen sich ebenfalls einbinden.

XBPS und Void

Void verwaltet nicht nur Repositories, deren Pakete die C-Standard-Bibliothek Glibc verwenden, sondern unterstützt in separaten Repositories auch die Alternative Musl [4]. XBPS beherrscht neben dem Paketmanagement aber noch mehr: Es stellt gleichzeitig auch das Buildsystem, mit dem die Void-Entwickler alle Pakete der Distribution bauen.

Derzeit liegt der von XBPS verwaltete Paketbestand in Void für die x86-Plattform bei über 8250 Paketen, die ARM-Varianten bieten jeweils über 5000 Pakete an. Um Zugriff auf den Bestand zu bekommen, müssen Sie zunächst die Quellen aktualisieren. Im Zuge dieses Updates bringen Sie per xbps-install -Su auch gleich den Paketbestand auf den neuesten Stand (Abbildung 1).

Abbildung 1: Als erste Amtshandlungen stehen das Update der Quellen sowie das Aktualisieren des Paketbestands an.
Abbildung 1: Als erste Amtshandlungen stehen das Update der Quellen sowie das Aktualisieren des Paketbestands an.

Blitzschnell unterwegs

Als Paketmanager legt XBPS Wert auf Einfachheit und Geschwindigkeit. Letzteres zeigt sich umgehend, wenn man XBPS mit dem nicht gerade langsamen Debian-Paketsystem vergleicht. XBPS geht etwa bei der Suche (Abbildung 2) und der Installation (Abbildung 3) von Paketen extrem flott zu Werke.

Abbildung 2: Die Suche nach Paketen leiten Sie mit <code>xbps-query <em class="replaceable">Paket</em></code> ein. Wie schon bei der Installation geht XBPS rasend schnell zu Werke.
Abbildung 2: Die Suche nach Paketen leiten Sie mit xbps-query Paket ein. Wie schon bei der Installation geht XBPS rasend schnell zu Werke.
Abbildung 3: F&uuml;r die Installation des E-Mail-Clients Thunderbird aus den Paketquellen ben&ouml;tigte XBPS weniger als 10&nbsp;Sekunden.
Abbildung 3: Für die Installation des E-Mail-Clients Thunderbird aus den Paketquellen benötigte XBPS weniger als 10 Sekunden.

Zudem beherrscht XBPS ein paar nützliche Funktionen, die den großen Paketmanagern meist fehlen. So unterstützt XBPS beispielsweise Package Reverts: Damit können die Entwickler, falls einmal ein Fehler unbemerkt zu den Anwendern gelangt, ein Paket-Downgrade verteilen und damit das defekte Paket ersetzen. Zudem lässt sich per xbps-pkgdb Paket ein Paket auf Fehler überprüfen.

Ein paar nette Tricks

Zudem bietet XBPS die Option, Pakete mitsamt der anderweitig nicht benötigten Abhängigkeiten zu entfernen. Dazu dient der Befehl xbps-remove -R Paket. Lässt man das -R weg, löscht XBPS nur das referenzierte Paket.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
KAUFEN
LinuxUser 02/2018 KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland

Hinterlasse einen Kommentar

  E-Mail Benachrichtigung  
Benachrichtige mich zu: