Pkgfile

Aus wiki.archlinux.de
Version vom 14. Dezember 2015, 13:34 Uhr von Michi (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „Kategorie:Paketverwaltung Mit '''pkgfile''' können die Pakete der offiziellen Repositorien nach Dateien durchsucht werden. {{Installation|repo=extra|pake…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Mit pkgfile können die Pakete der offiziellen Repositorien nach Dateien durchsucht werden.

Installation

Das Programm ist als pkgfile in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S pkgfile

Alternativ: pkgfile-gitAUR

Benutzung

Die pkgfile Datenbank aktualisieren.

pkgfile -u

Ein Paket suchen das die Datei makepkg enthält.

pkgfile makepkg
core/pacman

Alle Dateien anzeigen die im Paket archlinux-keyring enthalten sind.

pkgfile -l archlinux-keyring
core/archlinux-keyring	/usr/
core/archlinux-keyring	/usr/share/
core/archlinux-keyring	/usr/share/pacman/
core/archlinux-keyring	/usr/share/pacman/keyrings/
core/archlinux-keyring	/usr/share/pacman/keyrings/archlinux-revoked
core/archlinux-keyring	/usr/share/pacman/keyrings/archlinux-trusted
core/archlinux-keyring	/usr/share/pacman/keyrings/archlinux.gpg

pkgfile -l ist vergleichbar mit pacman -Ql. Der Unterschied besteht darin, dass nicht die lokal installierten Pakete, sondern alle Pakete in den Repositorien durchsucht werden.

Unbekannte Befehle

Für die Bash und Zsh enthält pkgfile einen "command not found" Hook, der bei Eingabe eines unbekannten Befehls automatisch die Pakete durchsucht.

abiword
abiword may be found in the following packages:
  extra/abiword 3.0.1-2	/usr/bin/abiword

Aktiviert wird der Hook durch einen Eintrag in der entsprechenden Shell Konfigurationsdatei.

Bash

~/.bashrc
source /usr/share/doc/pkgfile/command-not-found.bash

Zsh

~/.zshrc
source /usr/share/doc/pkgfile/command-not-found.zsh

Automatische Updates

Um die pkgfile Datenbank automatisch aktuell zu halten kann man den Systemd Service pkgfile-update.timer nutzen.

systemctl enable pkgfile-update.timer

Die Datenbank wird damit täglich aktualisiert. Um das Zeitintervall zu ändern kann die entsprechende Unit Datei angepasst werden.