Arch User Repository: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(82 dazwischenliegende Versionen von 23 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Das [https://aur.archlinux.org/?setlang=de ArchLinux User-Community Repository (AUR)] ist eine Sammlung von Paketbau-Anleitungen (den PKGBUILDs) anhand derer Programmpakete für Arch Linux erstellt werden können. Jeder kann dort seine Pakete nach einer [https://aur.archlinux.org/register/?setlang=de Registrierung] veröffentlichen und anderen zur Verfügung stellen. | |||
Das [ | |||
==Ein Paket aus dem AUR installieren== | |||
===Voraussetzungen=== | |||
Alle Pakete, die zur Erstellung von Paketen notwendig sind, befinden sich in der Gruppe base-devel: | |||
pacman -S base-devel | |||
=== | |||
===Paketdateien herunterladen=== | |||
Alle Dateien die nötig sind, um ein Paket zu erstellen, sind in einem Git-Repository gespeichert. | |||
Dieses kann man entweder mittels [[git]] klonen oder sich von der Website des Pakets im AUR über das rechtsseitige Menü ''Package Actions'' einen Snapshot herunterladen. | |||
====Git Methode==== | |||
<nowiki>git clone https://aur.archlinux.org/<paketname>.git</nowiki> | |||
=== | ====Snapshot Methode==== | ||
Der heruntergeladene Snapshot muss zunächst extrahiert werden. | |||
tar xvzf <snapshot_datei> | |||
=== | ====Alte Versionen==== | ||
Um an ältere Versionen der Paketdateien zu kommen, kann man die git-history nutzen. | |||
<nowiki>git clone https://aur.archlinux.org/<paketname>.git</nowiki> | |||
cd <paketname> | |||
git log # hier den commit-hash der gewünschten Version herausfinden | |||
git checkout <commit> | |||
===Paket erstellen=== | ===Paket erstellen=== | ||
Das Paket wird mittels ''makepkg'' erstellt. Dazu wechselt man in das Verzeichnis | {{achtung| Beachte die [[AUR Sicherheitshinweise]]!}} | ||
Das Paket wird mittels ''[[makepkg]]'' erstellt. Dazu wechselt man in das Verzeichnis, in dem man das Git-Repo erstellt hat, und führt ''makepkg'' aus: | |||
makepkg | makepkg | ||
Unter Umständen müssen noch Pakete installiert werden, die makepkg zum Bauen benötigt, oder die das fertige Paket zur Laufzeit benötigen würde. Stammen diese Abhängigkeiten aus den offiziellen Repositorien, so können sie mittels | |||
makepkg -s | |||
installiert werden. Bei Abhängigkeiten, die selber nur aus dem AUR erhältlich sind, muss man diese rekursiv nach dem hier geschilderten Verfahren bauen und installieren. Kommt man hierdurch in eine Abhängigkeitshölle, bietet sich die Verwendung eines der [[AUR Hilfsprogramme]] an. | |||
===Paket installieren=== | ===Paket installieren=== | ||
Das soeben erstellte Paket kann nun (als root) mittels Pacman installiert werden | Das soeben erstellte Paket kann nun (als root) mittels [[Pacman]] installiert werden: | ||
pacman -U beispiel-paket-*.pkg.tar. | pacman -U /pfad/beispiel-paket-*.pkg.tar.zst | ||
[[Kategorie: | ==Eigene Pakete erstellen== | ||
[[Kategorie: | Alle Dateien eines AUR-Pakets werden in einem eigenen Git-Repository gepflegt. | ||
Daher ist also zunächst git zu installieren. | |||
pacman -S git | |||
Man benötigt einen User im AUR, den man über die Weboberfläche einrichten kann, und einen öffentlichen Schlüssel (ssh), der dort per Copy&Paste zu hinterlegen ist. | |||
In der lokalen Konfigurationsdatei {{ic|~/.ssh/config}} ist folgendes einzutragen: | |||
Host aur.archlinux.org | |||
IdentityFile ~/.ssh/aur | |||
User aur | |||
Dann ist etwa folgendes einzugeben: | |||
<nowiki>git clone ssh://aur@aur.archlinux.org/<paketname>.git</nowiki> | |||
wobei <paketname> entsprechend zu ersetzen ist. | |||
Die Datei [https://www.archlinux.org/pacman/PKGBUILD.5.html PKGBUILD] ist im Wurzelverzeichnis des neu geklonten Git-Repositories zu erstellen. | |||
Ferner '''''muss''''' jeder Git-Commit die Datei ''.SRCINFO'' beinhalten. | |||
Diese kann mittels | |||
makepkg --printsrcinfo > .SRCINFO | |||
oder {{ic|mksrcinfo}} aus dem Paket {{paket|pkgbuild-introspection}} erstellt werden. | |||
==Siehe auch== | |||
* [[Arch Build System]] | |||
* [[AUR Sicherheitshinweise]] | |||
* [[AUR Hilfsprogramme]] | |||
* [[AUR benutzen (Beispiele)]] | |||
* [[Trizen]] | |||
[[ar:Arch User Repository]] | |||
[[cs:Arch User Repository]] | |||
[[da:Arch User Repository]] | |||
[[en:Arch User Repository]] | |||
[[el:Arch User Repository]] | |||
[[es:Arch User Repository]] | |||
[[fi:AUR]] | |||
[[fr:AUR]] | |||
[[it:Arch User Repository]] | |||
[[ja:Arch User Repository]] | |||
[[nl:Arch User Repository]] | |||
[[pl:Arch User Repository]] | |||
[[pt:Arch User Repository]] | |||
[[ro:AUR]] | |||
[[ru:Arch User Repository]] | |||
[[sr:Arch User Repository]] | |||
[[Kategorie:Arch-Linux-Projekte]] | |||
[[Kategorie:Paketverwaltung]] |
Aktuelle Version vom 4. November 2021, 00:57 Uhr
Das ArchLinux User-Community Repository (AUR) ist eine Sammlung von Paketbau-Anleitungen (den PKGBUILDs) anhand derer Programmpakete für Arch Linux erstellt werden können. Jeder kann dort seine Pakete nach einer Registrierung veröffentlichen und anderen zur Verfügung stellen.
Ein Paket aus dem AUR installieren
Voraussetzungen
Alle Pakete, die zur Erstellung von Paketen notwendig sind, befinden sich in der Gruppe base-devel:
pacman -S base-devel
Paketdateien herunterladen
Alle Dateien die nötig sind, um ein Paket zu erstellen, sind in einem Git-Repository gespeichert.
Dieses kann man entweder mittels git klonen oder sich von der Website des Pakets im AUR über das rechtsseitige Menü Package Actions einen Snapshot herunterladen.
Git Methode
git clone https://aur.archlinux.org/<paketname>.git
Snapshot Methode
Der heruntergeladene Snapshot muss zunächst extrahiert werden.
tar xvzf <snapshot_datei>
Alte Versionen
Um an ältere Versionen der Paketdateien zu kommen, kann man die git-history nutzen.
git clone https://aur.archlinux.org/<paketname>.git cd <paketname> git log # hier den commit-hash der gewünschten Version herausfinden git checkout <commit>
Paket erstellen
Achtung: Beachte die AUR Sicherheitshinweise!
Das Paket wird mittels makepkg erstellt. Dazu wechselt man in das Verzeichnis, in dem man das Git-Repo erstellt hat, und führt makepkg aus:
makepkg
Unter Umständen müssen noch Pakete installiert werden, die makepkg zum Bauen benötigt, oder die das fertige Paket zur Laufzeit benötigen würde. Stammen diese Abhängigkeiten aus den offiziellen Repositorien, so können sie mittels
makepkg -s
installiert werden. Bei Abhängigkeiten, die selber nur aus dem AUR erhältlich sind, muss man diese rekursiv nach dem hier geschilderten Verfahren bauen und installieren. Kommt man hierdurch in eine Abhängigkeitshölle, bietet sich die Verwendung eines der AUR Hilfsprogramme an.
Paket installieren
Das soeben erstellte Paket kann nun (als root) mittels Pacman installiert werden:
pacman -U /pfad/beispiel-paket-*.pkg.tar.zst
Eigene Pakete erstellen
Alle Dateien eines AUR-Pakets werden in einem eigenen Git-Repository gepflegt. Daher ist also zunächst git zu installieren.
pacman -S git
Man benötigt einen User im AUR, den man über die Weboberfläche einrichten kann, und einen öffentlichen Schlüssel (ssh), der dort per Copy&Paste zu hinterlegen ist.
In der lokalen Konfigurationsdatei ~/.ssh/config
ist folgendes einzutragen:
Host aur.archlinux.org IdentityFile ~/.ssh/aur User aur
Dann ist etwa folgendes einzugeben:
git clone ssh://aur@aur.archlinux.org/<paketname>.git
wobei <paketname> entsprechend zu ersetzen ist.
Die Datei PKGBUILD ist im Wurzelverzeichnis des neu geklonten Git-Repositories zu erstellen. Ferner muss jeder Git-Commit die Datei .SRCINFO beinhalten. Diese kann mittels
makepkg --printsrcinfo > .SRCINFO
oder mksrcinfo
aus dem Paket pkgbuild-introspection erstellt werden.