Pacman-Contrib

  andhet   Lesezeit: 7 Minuten

Nützliche pacman-Erweiterungen für Archies.

pacman-contrib

Da vor einigen Tagen ein kleiner aber feiner Artikel über die Möglichkeit von parallelen Downloads erschien, möchte ich kurz auf das bei Archlinux vorhandene Paket pacman-contrib eingehen.Dieses Paket enthält einige nützliche, kleine Skripte für Archlinux-User, die im Folgenden für die Paketversion 1.5.3-1 kurz vorgestellt werden.

checkupdates

Mittels checkupdates kann man überprüfen, wie viele und welche Updates zur Verfügung stehen, ohne dass die eigentliche Paketdatenbank geupdated wird, da das Tool eine zweite Datenbank verwendet. Dies ist nützlich, da bei Archlinux davor gewarnt wird, Installationen nach einem Update der Paketdatenbank vereinzelt vorzunehmen, also ohne gleichzeitig auch alle anderen Pakete zu aktualisieren. Neben einer Auflistung der Pakete kann man mittels checkupdate -d auch die Updates herunterladen, ohne diese zu installieren; quasi pacman -Suw nur eben unter Verwendung einer sekundären Paketdatenbank.

paccache

Man installiert und aktualisiert und installiert und aktualisiert und am Ende steht man mit einer vollen var-Partition dar. Dann ist man traurig und das ist doof. Damit dies nicht passiert, gibt es paccache, mit dem man das Verzeichnis /var/cache/pacman in einem aufgeräumten Zustand halten kann. Ja, pacman selbst kann dies mittels pacman -Sc auch, nur wirft dieser Befehl alle Pakete weg, die gerade nicht mehr installiert sind. Somit kann man auch nicht mehr auf eine vorherige Version des installierten Paketes downgraden, falls es doch Probleme damit geben sollte. paccache gibt hier mehr Möglichkeiten, da mittels paccache -rk 3 zum Beispiel zum Ausdruck gebracht wird, dass man die letzten drei Pakete behalten möchte. Das ist auch das Standardverhalten, wenn man nichts angibt.

Daneben gibt es noch mehr Möglichkeiten, die man der man-Page entnehmen kann, welche zum Beispiel dann interessant sind, wenn man in seinem Heimnetz einen Paketcache betreibt, damit nicht jeder Rechner immer das gleiche Paket aus dem Internet herunterladen muss. Durchaus eine hilfreiche Maßnahme im Digitalland Deutschland mit seinen umfangreichen und überall vorhandenen Glasfaseranschlüssen.

pacdiff

Dieses Tool hält Ausschau nach pacorig, pacnew und pacsave Dateien und bietet unter anderem die Möglichkeiten diese anzuschauen, zu mergen, zu diffen, zu löschen oder zu überschreiben. Man kann sich auch einfach nur eine Liste der gefundenen Dateien ausgeben lassen: pacdiff -o

paclist

Wolltet ihr nicht auch schon einmal wissen, aus welchen Repos ihr welche Pakete installiert habt? Na, dann benutzt dafür paclist! Wollt ihr zum Beispiel alle Pakete des extra-Repos auflisten, dann gibt eurer Konsole folgendes zum Futtern: paclist extra. Oder wollt ihr die Anzahl eurer Pakete geordnet nach Repo haben?

for repo in core extra community multilib
do
    printf "$repo: " && paclist $repo | wc -l
done

paclog-pkglist

paclog-pkglist /var/log/pacman.log parst die Log-Datei und gibt anhand derer die derzeit installierten Pakete aus. Wenn ihr keine Log-Datei angibt, wird die hier im Beispiel aufgeführte als Standard genommen. Da in der Datei auch die Installation von AUR-Paketen geloggt werden, werden auch diese hier berücksichtigt.

pacscripts

Laut Beschreibung gibt dieses Helferlein die pre- bzw. post-Aktionen eines Paketes aus; also zum Beispiel die Skripte, die vor dem Installieren ausgeführt werden. So ist die Ausgabe von pacscripts nextcloud:

# arg 1:  the new package version
# arg 2:  the old package version
post_upgrade() {
  if (( "$(vercmp "$2" '21.0.0-6')" < 0 )); then
    printf "WARNING: Major changes introduced to package!\n"
    printf "         The application is now run as its own user - nextcloud.\n"
    printf "         Default directories for runtime, state and log files are provided.\n"
    printf "         A convenience wrapper around occ is provided in /usr/bin/occ.\n"
    # directories below /usr/share/webapps/nextcloud are still group-owned by the
    # nextcloud user due to nextcloud < 21.0.0
    find /usr/share/webapps/nextcloud -type d -exec chgrp root {} \;
  fi
  if (( "$(vercmp "$2" '22.0.0-1')" < 0 )); then
    printf "NOTE: The application's .htaccess file is now located in /etc/webapps/nextcloud/.\n"
  fi
}

pacsearch

Hiermit kann nach Paketen gesucht werden, wobei die synchronisierten Datenbanken wie die lokale Datenbank, in der auch die installierten AUR-Pakete sich wiederfinden, als Quelle benutzt wird.

pacsort

In der man-Seite heißt es dazu pacsort - sort utility implementing alpm_pkg_vercmp. Ich muss zugeben, dass mir das nicht weiterhilft. Aber wir haben hier ja eine Kommentarfunktion und wer mir hier weiterhelfen kann, darf das nun gerne tun.
Lasst mich bitte nicht im Dunkeln stehen!

pactree

Dieses kleine Tool gibt den Abhängigkeitsbaum eines Paketes aus.

pactree lz4
lz4
└─glibc
  ├─linux-api-headers>=4.10
  ├─tzdata
  └─filesystem
    └─iana-etc

rankmirrors

Wenn man eine Liste von Spiegelservern in absteigender Qualität ausgeben möchte, der kann dafür diesen Befehl verwenden. Wenn ihr in eurer /etc/pacman.d/mirrorlist Datei 10 Server konfiguriert habt und ihr nun diese nach der Qualität sortiert haben möchtet, könnt ihr das mittels rankmirrors /etc/pacman.d/mirrorlist. An dieser Stelle sei noch kurz auf das Alternativtool reflector hingewiesen, das vielleicht noch interessanter ist, da es mehr Möglichkeiten in der Benutzung bietet.

updpkgsums

Dieses Tool aktualisiert die Checksumme einer PKGBUILD Datei und ist damit eher für diejenigen interessant, die selbst Pakete erstellen möchten.

Tags

pacman, Arch, Arch-Linux, Erweiterung, Erweiterungen, Paketverwaltung

Es wurden noch keine Kommentare verfasst, sei der erste!