Pakku
Pakku ist ein in der Programmiersprache Nim geschriebenes AUR-Hilfsprogramm. Als solches kann Pakku beim Runterladen von PKGBUILDs und der Installation von daraus gebauten Programmen helfen. Pakku kann dafür unter Berücksichtigung der Sicherheitshinweise und Best Practices zum Bauen benötigte Pakete sowohl aus dem AUR als auch aus den Repositorien automatisch bauen und installieren und hinterher auch wieder entfernen.
Installation
Pakku befindet sich selbst ebenfalls im AUR, und muss vor Verwendung aus diesem installiert werden. Dazu wird zuerst das Pakku-Repository aus dem AUR ins aktuelle Verzeichnis geklont.
git clone https://aur.archlinux.org/pakku.git .
Nun sollte man mit einem Editor der Wahl das PKGBUILD öffnen und Prüfen, ob irgendetwas auffällig ist. Zudem sollte man die Kommentare im AUR dahingehend prüfen, ob es Dinge vor oder beim Paketbau zu beachten gilt. Wenn alles soweit gut aussieht, kann man das Paket bauen. Da Pakku nicht von weiteren AUR-Paketen abhängt, kann man makepkg mit den entsprechenden Parametern aufrufen, um notwendige Abhängigkeiten zu installieren.
makepkg -rsi
Dies installiert zum bauen notwenige Abhängigkeiten, baut das Paket, entfernt die Abhängigkeiten wieder, und installiert das gebaute Paket. Pakku lässt sich nach erfolgreichem Bau und der Installation mittels pakku
aufrufen.
Verwendung
Pakku beherrscht die Pacman-Syntax, und reicht Aktivitäten die Standard-Repositorys betreffend direkt an Pacman durch, gleichzeitig wird aber auch immer das AUR mit Berücksichtigt. Zusätzlich hat Pakku selbst noch einige wenige Optionen die AUR-Spezifisch, bzw. Pakku-Spezifisch sind, die in der Manpage aufgelistet werden.
Um ein Paket zu suchen, kann man wie mit Pacman -Ss
benutzen.
pakku -Ss pakku
aur/pakku 0.17-3 [Installiert] [35 / 0.702148] Pacman wrapper and AUR helper with a pacman-like user interface aur/pakku-git 1:0.14.r19.gf2a93be-1 [8 / 0.000000] Pacman wrapper with AUR support with latest changes from github repo aur/pakku-gui 0.2.0-2 [3 / 0.000000] GTK frontend for pakku aur/pakku-gui-git 0.1.4-1 [0 / 0.000000] GTK frontend for pakku
Will man nun zum Beispiel pakku-gui
installieren, so kann man dies genau so tun, wie man mit Pacman auch Programme installieren würde.
pakku -S pakku-gui
Sofern das AUR-Paket Kommentare hat und die entsprechende Konfigurationsoption aktiv ist, werden die aktuellsten Kommentare hier angezeigt. Danach startet dann der Paketbauprozess. Zuerst wird man für alle Dateien in den Quellen gefragt, ob man diese ansehen/bearbeiten möchte.
:: View and edit pakku-gui/PKGBUILD? [Y/n/s/a/?]
Hier wählt man Y
aus, und prüft dann das PKGBUILD. Pakku benutzt dafür automatisch den über die Umgebungsvariable VISUAL
definierten Editor. Wenn das PKGBUILD okay aussieht, verlässt man den Editor und bestätigt die erneute Abfrage mit n
. Dies wiederholt man für alle weiteren Dateien.
Nach der letzten geprüften Datei startet der eigentliche Prozess des erstellen des Pakets. Je nach Umfang des Paktes und dessen Abhängigkeiten dauert dies genau so lange, wie wenn man das Paket händisch selber kompilieren würde
==> Erstelle Paket: pakku-gui 0.2.0-2 (Mi 22 Jan 2025 20:39:36 CET) ==> Prüfe Laufzeit-Abhängigkeiten... ==> Prüfe Buildtime-Abhängigkeiten... ==> Empfange Quellen... -> Lade pakku-gui-0.2.0.tar herunter... [...] ==> Beendete Erstellung: pakku-gui 0.2.0-2 (Mi 22 Jan 2025 20:39:37 CET) :: Continue installing? [Y/n]
Hier wählt man nun Y
aus. Wenn sudo installiert ist, benutzt Pakku dieses, um mittels Pacman das Paket zu installieren. Wenn sudo nicht installiert ist, wird automatisch su
benutzt.
Sollten Abhängigkeiten installiert werden müssen (sei es für den Paketbau oder für das Programm ans sich), verhält sich Pakku ganz genau so. Wenn Abhängigkeiten aus dem AUR installiert werden müssen, startet der komplette Prozess für die AUR-Abhängigkeiten rekursiv genau so nochmals innerhalb des eigentlichen Pakku-Aufrufs. Die finale Aktion bezüglich Paketen findet immer über Pacman statt.
Konfiguration
Die Konfiguration von Pakku findet in der Datei /etc/pakku
statt. Es seien hier exemplarisch nur einige Optionen genannt.
/etc/pakku.conf
[options] AurComments CheckIgnored PrintLocalIsNewer PreserveBuilt = Internal
Diese Konfigurationsdatei setzt vier Optionen.
AurComments
Zeigt relativ weit zu Anfang die aktuellsten Kommentare aus dem AUR zum gewählten Paket an.CheckIgnored
Prüft, ob das zu installierende Paket auf der Ignorierliste ist, und warnt dann vor dem Bauen.PrintLocalIsNewer
Informiert, wenn das zu Bauende Paket bereits in einer neueren Version installiert ist.PreserveBuilt = Internal
Speichert gebaute/installierte Pakete mit im Pacman-Cache ab.
Alle Optionen sind in der Manpage pakku.conf
zu finden und dort weitergehend beschrieben.
Siehe auch
- AUR & Sicherheitshinweise
- Pakku um AURAUR
- Weitere Beispiele zur AUR-Nutzung
- Andere Hilfsprogramme fürs AUR