Pkgfile

Aus wiki.archlinux.de

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, 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.