AUR-Helfer automatisieren die Nutzung des Arch User Repository. Insbesondere können sie die folgenden Aufgaben automatisieren:
- Suchen nach Paketen, die im AUR veröffentlicht wurden;
- Auflösen von Abhängigkeiten zwischen AUR-Paketen;
- Abrufen und Erstellen von AUR-Paketen;
- Abrufen von Web-Inhalten, wie z.B. Benutzerkommentaren;
- Einreichen von AUR-Paketen.
Pacman führt nur Aktualisierungen für bereits erstellte Pakete in seinen Repositories durch. AUR-Pakete werden in Form von PKGBUILDs weiterverteilt und benötigen einen AUR-Helper, um den Rebuild-Prozess zu automatisieren. Beachten Sie jedoch, dass ein Rebuild des Pakets erforderlich sein kann, wenn seine gemeinsam genutzten Bibliotheksabhängigkeiten aktualisiert werden, nicht nur, wenn das Paket selbst aktualisiert wird.
Legend
Die Spalten der #Vergleichstabellen haben die folgende Bedeutung:
Dateiprüfung Sourced das PKGBUILD standardmäßig überhaupt nicht; oder warnt den Benutzer und bietet die Möglichkeit, das PKGBUILD manuell zu prüfen, bevor es gesourced wird. Einige Helfer sind dafür bekannt, PKGBUILDs zu sourcen, bevor der Benutzer sie untersuchen kann, wodurch bösartiger Code ausgeführt werden kann. Diff-Ansicht Möglichkeit zur Anzeige von Paketunterschieden bei der Inspektion. Dazu gehören neben dem PKGBUILD auch Änderungen an Dateien wie.install
oder.patch
Dateien. Git-Klon Verwendet standardmäßig git-clone(1), um Build-Dateien aus dem AUR abzurufen. Zuverlässiger Parser Fähigkeit, komplexe Pakete zu behandeln, indem die bereitgestellten Metadaten (RPC/.SRCINFO) anstelle von PKGBUILD-Parsing verwendet werden, wie z.B. aws-cli-gitAUR. Zuverlässiger Solver Fähigkeit, komplexe Abhängigkeitsketten korrekt zu lösen und zu erstellen, wie z. B. ros-lunar-desktopAUR. Aufgeteilte Pakete Fähigkeit, mehrere Pakete aus der gleichen Paketbasis korrekt zu bauen und zu installieren:
- Mehrere Pakete aus der gleichen Paketbasis, ohne mehrfache Neuerstellung oder Neuinstallation, wie clionAUR
- Aufgeteilte Pakete, die von einem Paket aus der gleichen Paketbasis abhängen, wie libc++ und libc++abi.
- Trennen Sie Pakete unabhängig voneinander, wie python-pyalsaaudioAUR und python2-pyalsaaudioAUR.
Shell-Vervollständigung Die Tab-Vervollständigung ist für die aufgeführten Shells verfügbar.
- Optional bedeutet, dass eine Funktion verfügbar ist, aber nur über ein Kommandozeilenargument oder eine Konfigurationsoption.
- Partiell bedeutet, dass eine Funktion nicht vollständig implementiert ist oder teilweise von den angegebenen Kriterien abweicht.
Vergleichstabellen
Suchen und Herunterladen
Name | Schreiben in | Git clone | Zuverlässiger Parser | Zuverlässiger Solver | Shell-Vervollständigung | Spezifität |
---|---|---|---|---|---|---|
auracle-gitAUR | C++ | Ja | Ja | Ja | bash | print build order |
pbgetAUR | Python | Ja | Ja | – | – | – |
repoctlAUR | Go | Nein | Ja | – | zsh | local repository |
yaahAUR | Bash | Optional | Ja | – | Bash | – |
Suchen und erstellen
Name | Geschrieben in | Dateiüberprüfung | Diff-Ansicht | Git-Klon | Zuverlässiger Parser | Zuverlässiger Solver | Pakete aufteilen | Shell-Vervollständigung | Spezifität |
---|---|---|---|---|---|---|---|---|---|
aurutilsAUR | Bash | Ja | Ja | Ja | Ja | Ja | Ja | bash, zsh | lokales Repository, lokale Patch-Anwendung, Paketsignierung, clean chroot |
bauerbillAUR | Python | Ja | Nein | Ja | Ja | Ja | bash, zsh | bb-wrapper für pacman wrapping, Vertrauensverwaltung |
|
PKGBUILDerAUR | Python | Nein | Nein | Ja | Ja | Ja | Teilweise | – | pb für pacman wrapping |
ruaAUR | Rust | Ja | Ja | Ja | Ja | Ja | bash, zsh, fish | local patch application, bubblewrap, .pkg.tar inspection |
Pacman wrappers
Name | Geschrieben in | Dateiüberprüfung | Diff-Ansicht | Git-Klon | Zuverlässiger Parser | Zuverlässiger Solver | Pakete aufteilen | Unsichere Flags | Shell-Vervollständigung | Spezifität |
---|---|---|---|---|---|---|---|---|---|---|
auraAUR | Haskell | Nein | Teilweise | Ja | Ja | Ja | Ja | – | bash, fish, zsh | – |
pacaurAUR | Bash | Ja | Ja | Ja | Ja | Ja | –ask | bash, zsh | – | |
pakkuAUR | Nim | Ja | Ja | Ja | Ja | Ja | -Sy | bash, zsh | PGP-Schlüssel holen | |
paruAUR | Rust | Ja | Ja | Ja | Ja | -Sy –ask |
bash, fish, zsh | PGP-Schlüssel holen | ||
pikaurAUR | Python | Ja | Ja | Ja | Ja | -Sy | bash, fish, zsh | dynamische Benutzer | ||
trizenAUR | Perl | Ja | Ja | Ja | Ja | Ja | Teilweise | – | bash, fish, zsh | – |
yayAUR | Go | Ja | Ja | Ja | Ja | Ja | – | Ja | bash, fish, zsh | PGP-Schlüssel holen |
Graphisch
- Argon – GTK 3 pacman wrapper written in Python.
https://github.com/14mRh4X0r/arch-argon || argonAUR
- Cylon – TUI pacman wrapper written in Bash.
https://github.com/gavinlyonsrepo/cylon || cylonAUR
- Pamac – Eigenständiger GTK 3 Paketmanager, der libalpm(3) benutzt und in Vala geschrieben wurde.
https://gitlab.manjaro.org/applications/pamac || pamac-aurAUR
- Pakku GUI – GTK 3 Frontend für pakku, geschrieben in Python.
https://gitlab.com/mrvik/pakku-gui || pakku-guiAUR
- PkgBrowser – Qt 5 Nur-Lese-Browser für Repository-Pakete und AUR, geschrieben in Python.
https://osdn.net/projects/pkgbrowser/ || pkgbrowserAUR
- Octopi – Qt 5 pacman Wrapper geschrieben in C++.
https://tintaescura.com/projects/octopi || octopiAUR
- Yup – Curses TUI pacman Wrapper geschrieben in Go.
https://github.com/ericm/yup || yupAUR
Wartung
- aur-out-of-date – Verwendet Hoster-APIs, um AUR-Pakete auf Upstream-Änderungen zu prüfen.
https://github.com/simon04/aur-out-of-date || aur-out-of-dateAUR
- aurpublish – Hilfsskript zum Verwalten und Hochladen von AUR-Paketen mit git-subtree(1). Verwendet githooks(5), um die PKGBUILD-Integrität zu überprüfen, automatisch .SRCINFO zu generieren und eine Vorlage für die Übergabemeldung zu erstellen.
https://github.com/eli-schwartz/aurpublish || aurpublish
- devtools – Erstellt Pakete in einer sauberen Umgebung (systemd-nspawn Container), um ihre Korrektheit sicherzustellen. Wird von aurutilsAUR und clean-chroot-managerAUR umschlossen.
https://git.archlinux.org/devtools.git/ || devtools
- pkgbuild-watch – Sucht nach Änderungen auf den Upstream-Webseiten.
http://kmkeen.com/pkgbuild-watch || pkgbuild-watchAUR
- pkgoutofdate – Analysiert die Quell-URL von PKGBUILDs und versucht, neue Versionen von Paketen zu finden, indem es die Versionsnummer inkrementiert und Anfragen an den Webserver sendet.
https://github.com/anatol/pkgoutofdate || pkgoutofdate-gitAUR
Sonstiges
- aur-talk – Holt AUR-Kommentare und zeigt sie an.
https://github.com/GermainZ/aur-talk || aur-talk-gitAUR
- aurvote-utils – Ein Satz von Werkzeugen zur Verwaltung von AUR-Abstimmungen.
https://github.com/jadenPete/aurvote-utils || aurvote-utilsAUR
- haskell-aur – Haskell-Bibliothek für den Zugriff auf die Aurweb RPC-Schnittstelle.
https://hackage.haskell.org/package/aur || haskell-aurAUR
- package-query – Werkzeug zur Abfrage von libalpm(3) und dem AUR.
https://github.com/archlinuxfr/package-query || package-queryAUR
- python3-aur – Python 3 Module und Hilfsprogramme für den Zugriff auf AUR-Paketinformationen und die Automatisierung von AUR-Interaktionen.
https://xyne.archlinux.ca/projects/python3-aur || python3-aurAUR
- raur – Rust-Bibliothek für den Zugriff auf die Aurweb RPC-Schnittstelle.
https://gitlab.com/davidbittner/raur ||