Das Arch User Repository (AUR) ist eine Online-Datenbank von Scripten, die dazu dienen, Pakete für den Paketmanager pacman zu erstellen. Diese Anleitungen, bekannt als PKGBUILDs, sind wesentlicher Bestandteil der Linux-Distribution Arch Linux. Es findet sich hier also keine fertigen Pakete im klassischen sinne, sondern lediglich eine Beschreibung, wie man eben ein eigenes Paket erstellen kann. Die entsprechenden Dateien werden dann u.a. zum Beispiel von Github geladen, teilweise kompiliert und dann zu einem fertigen Paket zusammen gebaut.
Es erspart also eine ganze Menge händische Arbeit, die ansonsten nötig wären. Dazu gehören ja ggf. nicht nur das kompilieren von Quelltexten, sondern auch die entsprechenden Abhängigkeiten heraus zu finden und aufzulösen.
Das AUR ist aber kein offizielles Repository, sondern wird jeweils von den Benutzern gepflegt, der die Dateien dort hoch geladen hat. Das bringt auch gewisse Sicherheitsrisiken mit sich, denn es könnten dort natürlich bösartige Zeitgenossen entsprechende Dateien anbieten. Daher sollte man schon sich ein wenig informieren und schauen, wie vertrauenswürdig das entsprechende Paket ist.
Inhalt
Vorraussetzungen
Damit das AUR genutzt werden kann, werden einige Entwicklungstools, wie “gcc“, “make“, etc. und “git” benötigt. Diese kann man ganz einfach über den Arch Linux eigenen Paketmanager “pacman” installieren:
$ sudo pacman -S --needed base-devel git
Paket installieren
Was jetzt noch fehlt, ist der entsprechende Link des gewünschten Paketes. Als Beispiel nehme ich einfach mal das beliebte Audiotool “Audacity”. Dazu geht man auf die Webseite des AUR: https://aur.archlinux.org/. Und dort gibt es u.a. auch ein Suchfeld, über die man das gewünschte suchen kann.
Es kommt eine Ergebnisliste zurück, auf dieser man das gewünschte auswählt und anklickt. Neben vielen interessanten Informationen und ggf. auch Erfahrungen oder Probleme von Benutzern im Kommentarbereich, findet man unter “Git Clone URL:” die URL, die man für das weitere Vorgehen benötigt.
Mit dem Tool “git” lädt man sich die entsprechende Dateien über die URL herunter. Dazu auf dem Rechner am besten ein Verzeichnis anlegen, wo man diese Pakete ablegen kann. Und dann kopiert man die Dateien wie folgt:
$ git clone https://aur.archlinux.org/audacity-git.git
Es wird, in diesem Beispiel für Audacity, automatisch ein Unterverzeichnis “audacity-git” angelegt und die Dateien dort abgelegt. In dieses Verzeichnis wird jetzt gewechselt:
$ cd audacity-git
Jetzt kann man entweder nur erst einmal das Paket erstellen lassen oder dieses nach der Erstellung auch automatisch installieren.
Möchte man das Paket nur erstellen, um es ggf. später mit “pacman” manuell zu installieren, dann lautet der Aufruf:
$ makepkg -s
Jetzt läuft automatisch eine Abfolge verschiedener Anweisungen ab. Es werden Dateien aus dem Internet herunter geladen, ggf. Source Code compiliert und anschließend ein Paket zusammen gebaut. Je nach AUR Package muss man zwischendurch Abfragen beantworten und auch sein Passwort für “sudo” Rechte eingeben.
Wenn alles abgeschlossen wurde, findet sich in dem Verzeichnis ein fertiges Paket, welches dann zu einem späteren Zeitpunkt installiert werden kann:
$ pacman -U <PAKETNAME>
Oder wenn man das AUR Paket direkt installieren möchte, kann man bei “makepkg” zusätzlich den Parameter “-i” angeben und das Paket wird nicht nur erzeugt, sondern auch direkt installiert.
$ makepkg -si
Wenn man öfters Pakete vom AUR nutzen, und auch Updates leichter durchführen möchte, gibt es noch eine weitere Möglichkeit.
Dazu gibt es diverse AUR Helper Tools, die wie ein Paketmanager arbeiten. Zwei bekannte Vertreter sind YAY (Yet Another Yogurtt) und PARU. Es gibt noch weitere, die aber größtenteils seit längerer Zeit nicht mehr aktualisiert werden. Daher beschränke ich mich auf die beiden genannten Vertreter.
YAY installieren
Auch “yay” findet man über das AUR unter https://aur.archlinux.org/yay.git. Und da im Normalfall noch kein anderer AUR Package Helper installiert ist, muss auch hier erst einmal der manuelle Weg durchgeführt werden:
Dazu lädt man sich wieder die Dateien per “git” über das AUR und erstellt mit “makepkg” ein Paket und installiert dieses:
$ git clone https://aur.archlinux.org/yay-bin.git $ cd yay-bin $ makepkg -si
PARU installieren
Oder wenn man lieber “paru” nutzen möchte, dann ist der Weg gleich, nur die AUR Link ein anderer:
$ git clone https://aur.archlinux.org/paru-bin.git $ cd paru-bin $ makepkg -si
AUR Package Helper
Welchen AUR Package Helper man benutzt, ist Geschmackssache. Alle haben ihre Vor- und Nachteile und keiner ist wirklich perfekt. Beide tun im Grunde das gleiche, und die Bedienung ist an “pacman” angelehnt. Mit “aur -S <paketname>“, bzw. “paru -S <paketname>” installiert man ein Paket. Oder mit “aur -Syu“, bzw. “paru -Syu” wird ein Upgrade durchgeführt.
Quellen:
https://aur.archlinux.org/
https://github.com/Jguer/yay
https://github.com/Morganamilo/paru
