Xbps

X Binary Package System
Basisdaten

MaintainerVoid Linux Team
EntwicklerJuan RP / Duncan Overbruck / Enno Boland
Aktuelle Version0.59.1[1]
(1. April 2020)
BetriebssystemUnixartige Systeme wie bspw. GNU/Linux
ProgrammierspracheC
KategoriePaketverwaltung
LizenzBSD-Lizenz (Freie Software)
deutschsprachignein
xbps

X Binary Package System (XBPS) ist ein freies (BSD-Lizenz) Paketverwaltungs-System, das ursprünglich als Ersatz[2] für pkgsrc entwickelt worden und nun der Paketmanager von Void Linux ist. Es umfasst das Paketformat und alle nötigen Programme, um xbps-Pakete zu erstellen und zu verwalten.

Hintergrund

Das Ziel der Entwicklung ist es, einen schnellen, einfach zu benutzenden, fehlerfreien, aber funktionsreichen und portablen Paketmanager zu erstellen. Folgende Funktionen stehen zur Verfügung:

  • Es werden mehrere Projektarchive, lokale als auch entfernte (via HTTP/HTTPS/FTP) unterstützt.
  • Die entfernten Projektarchive sind mit RSA signiert.
  • Die Paketmetadaten und die Dateien der Binärpakete sind mit SHA256 gehasht.
  • Es werden die Paketzustände (ähnlich wie bei dpkg) verwendet, um bei der Installation oder der Aktualisierung die Gefahr von defekten Paketen zu mindern.
  • Es besteht die Möglichkeit, nicht vollständige Installationen oder Aktualisierungen fortzuführen;
  • die Möglichkeit, nur die Dateien zu entpacken, die in dem Paket aktualisiert wurden;
  • die Möglichkeit, Metapakete zu verwenden;
  • die Möglichkeit zu testen, ob es zu Inkompatibilitäten von gemeinsam genutzten Bibliotheken kommt.;
  • die Möglichkeit, Pakete zu ersetzen;
  • die Möglichkeit, Pakete von der Aktualisierung auszuschließen;
  • die Möglichkeit, Konfigurationsdateien zu erhalten/zu aktualisieren;
  • die Möglichkeit, Pakete erneut zu installieren;
  • die Möglichkeit, Pakete mit einer niedrigeren Versionsnummer zu installieren;
  • die Möglichkeit, Skripte vor und nach Installation, Entfernung oder Aktualisierung auszuführen;
  • die Möglichkeit, die Pakete auf ihren Zustand, fehlende Dateien, Hashes, fehlende oder unaufgelöste Abhängigkeiten, freihängende oder geänderte symbolische Links u. Ä. zu untersuchen.

Die Programme des xbps-Paketmanagers sind auch die Basis für das Buildsystem. Dabei werden sogenannte Vorlagen in einem git-Projektarchiv[3] definiert, so dass sich daraus die Binärpakete, auch für andere Rechnerarchitekturen als die installierte, erstellen lassen.

Die Binärpakete mit der Endung .xbps sind ähnlich wie .deb-Pakete gepackte tar-Archive. Standardmäßig wird xz als Packprogramm verwendet, Alternativen sind aber möglich. Die Metadaten werden als plist für die zu installierenden Dateien in files.plist und für das Paket als props.plist gehalten.

Beispiele

Den Paketindex aktualisieren:

 xbps-install -S

Alle Pakete aktualisieren:

 xbps-install -u

Pakete suchen:

 xbps-query -Rs 'Suchtext'

Ein Paket installieren:

 xbps-install 'paketname'

Ein Paket mit allen abhängigen Paketen entfernen:

 xbps-remove -R 'paketname'

Alle manuell installierten Pakete auflisten:

 xbps-query -m

Alle im Paket enthaltenen Dateien auflisten:

 xbps-query -f 'paketname'

Alle Alternativen auflisten:

 xbps-alternatives -l

Betriebssysteme, die xbps nutzen

Linux-Distributionen:

Siehe auch

Weblinks

Einzelnachweise

  1. Release 0.59.1. 1. April 2020 (abgerufen am 4. April 2020).
  2. Hackover-Vortrag zu Void Linux. 25. Oktober 2014, abgerufen am 23. September 2015.
  3. Vorlagen-Repository für Void Linux. 26. Juni 2019, abgerufen am 26. Juni 2019.