====== ALPM Datenbankpflege ======
Die **ALPM** oder auch **//Arch Linux Package Management//** Datenbank, wird hauptsächlich über den Paketmanager **''pacman''** verwaltet.
In dieser sammeln sich mit der Zeit durch Installation/Deinstallationen von Paketen sogenannte **verwaiste** (**orphans**) Pakete im System an. Dies sind Pakete, die von keinem anderen Paket **als Abhängigkeit** benötigt werden und laut vermerkten **Installationsgrund nicht ausdrücklich installiert** wurden. Oder anders ausgedrückt, der Benutzer hat in der ALPM Datenbank nicht angegeben, dass er dieses Paket **ausdrücklich behalten möchte.**
Der Installationsgrund, wird von ''pacman'' auf einem **interaktiven Terminal** automatisch auf **ausdrücklich installiert** gesetzt. Es sei denn, man verwendet bei der Installation die ''--asdeps'' Option.
Um seine ALPM Datenbank gut in Schuss zu halten, sollte man hin und wieder **verwaiste Pakete deinstallieren** und die **Installationsgründe der Pakete korrigieren**, falls diese nicht mehr den aktuellen Wünschen entsprechen.
===== Verwaiste Pakte Anzeigen =====
Bei Verwendung des [[aw>Arch_User_Repository|AUR]] oder bei selbstgebauten Paketen, muss die Ausgabe
von ''pacman -Qtdq'' kontrolliert werden! In den [[aw>PKGBUILD]]s sind nicht immer alle Abhängigkeiten korrekt angegeben.
Um Pakete anzuzeigen, die von keinem anderen Paket mehr benötigt werden, kann nachfolgender Befehl verwendet werden. Für Aufklärung der einzelnen Optionen siehe [[am>pacman.8|PACMAN(8)]]
pacman -Qtdq
Möchte man zu der Ausgabe von ''pacman -Qtdq'' eine kurze Paketbeschreibung mit angezeigt bekommen, so kann das Programm [[ap>expac]] zu Hilfe genommen werden:
pacman -Qtdq | expac "%! %n\t\t\t\t%d" -
Diese Pakete können [[aw>Pacman#Removing_packages|deinstalliert]] oder dessen Installationsgrund auf **ausdrücklich installiert** geändert werden. Um in der ALPM Datenbank ein Vermerk zu machen, dass man dieses Paket behalten möchte.
===== Installationsgrund ändern =====
Möchte man den Installationsgrund eines Pakets ändern, können folgende Befehle verwendet werden:
**Setzt den Installationsgrund auf ausdrücklich installiert**:
sudo pacman -D --asexplicit
**Setzt den Installationsgrund als Abhängigkeit installiert**:
sudo pacman -D --asdeps
===== Schnelle Deinstallation von verwaisten Pakten =====
Bei Verwendung des [[aw>Arch_User_Repository|AUR]] oder bei selbstgebauten Paketen, muss die Ausgabe
von ''yay -Yc'' kontrolliert werden! In den [[aw>PKGBUILD]]s sind nicht immer alle Abhängigkeiten korrekt angegeben. Zudem sollten alle Installationsgründe korrekt in der ALPM Datenbank angegeben worden sein, um die Deinstallation eventuell optionale gewollte Pakete zu vermeiden!
Um verwaiste Pakete schnell ausfindig zu machen und zu deinstallieren kann der [[aw>AUR_helpers|AUR Helper]] ''yay'' aus dem AUR [[aur>yay-bin]]**AUR** oder aus dem **EndeavourOS Repository** verwendet werden. Dieser löst auch tiefere Abhängigkeitsketten auf:
yay -Yc
===== Siehe auch =====
* [[aw>Tips_and_tricks#Removing_unused_packages_(orphans)]]
* [[aw>Pacman#Removing_packages]]
* [[am>expac.1|EXPAC(1)]]
* [[https://www.suletuxe.de/forum/index.php?board=18;action=display;threadid=693|Suletuxe Forum Diskussionsthread]]