Arch User Repository: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
KKeine Bearbeitungszusammenfassung
K (Änderungen von Dongiovanni (Diskussion) rückgängig gemacht und letzte Version von 127.0.0.1 wiederhergestellt)
Zeile 1: Zeile 1:
{{righttoc}}
{{Unvollständig}}
==Einführung==
==Was ist das AUR?==
Das [http://aur.archlinux.org/index.php?setlang=de ArchLinux User-Community Repository (AUR)] ist eine Sammlung von Paketbeschreibungen (den PKGBUILDs) anhand derer Programmpakete für Arch Linux mittels [[Abs]] erstellt werden können. Jeder kann dort seine Pakete nach einer [http://aur.archlinux.org/account.php?setlang=de Registrierung] veröffentlichen und anderen zur Verfügung stellen.
Das [http://aur.archlinux.org/index.php?setlang=de ArchLinux User-Community Repository (AUR)] ist eine Sammlung von PKGBUILDs, den Bauanleitungen für ARCH-Pakete. Jeder kann dort seine Pakete veröffentlichen und anderen zur Verfügung stellen. Um die Funktionen des AUR benutzen zu können, ist eine Registrierung auf [http://aur.archlinux.org/account.php?setlang=de aur.archlinux.org] nötig.


==Ein Paket aus dem AUR installieren==
==Ein Paket aus dem AUR installieren==
===Voraussetzungen===
===Fakeroot installieren===
Alle Pakete, die zur Erstellung von Paketen notwendig sind, befinden sich in der Gruppe base-devel:
Um ein Paket als normaler User zu erstellen muss das Paket fakeroot installiert werden. Es ist zu empfehlen Pakete als normaler User und nicht als Root zu erstellen, um zu verhindern, dass das System beschädigt wird falls etwas schief geht.
  pacman -S fakeroot


===Alle benötigten Pakete installieren===
Um alle zum Kompilieren und Paketeerstellen benötigten Pakete zu installieren, empfiehlt es sich, das Metapaket base-devel zu installieren (Fakeroot ist dabei eingeschlossen).
   pacman -S base-devel
   pacman -S base-devel
===Ein Verzeichnis für eigene Pakete wählen===
Als nächstes muss man sich überlegen wo man eigene Pakete erstellen/speichern will. Es ist zu empfehlen sie unter ''/var/abs/local'' zu erstellen. Man kann aber natürlich auch ein anderes Verzeichnis, z. B. ''/home/<user>/Pakete'', verwenden. Auf jeden Fall ist darauf zu achten, dass der User Schreibrechte in dem Verzeichnis hat, damit die Pakete als nicht-Root-User erstellt werden können.
'''Achtung:''' Wenn man sich entschieden hat ein Verzeichnis unterhalb von ''/var/abs'' zu verwenden sollte man auf es auf jeden Fall ''/var/abs/local'' nennen, da alle anderen Verzeichnisse (außer die für die Repos; core, extra, ect.) beim aktualisieren des [[Arch Build System | ABS]] Baumes gelöscht werden!
Im Folgenden wird beschrieben wie man vorgeht um die Pakete unter ''/var/abs/local'' zu erstellen. Verwendet man ein Verzeichnis unterhalb von ''/home/<user>'', entfallen die nächsten Schritte, da bereits Schreibrechte bestehen.
*Die Gruppe ''abs'' erstellen
  groupadd abs
*den User der Gruppe ''abs'' hinzufügen (danach aus- und wieder einloggen damit die Änderungen wirksam werden)
gpasswd -a <user> abs
*Verzeichnis ''/var/abs/local'' erstellen, der Gruppe ''abs'' zuordnen und die Zugriffsrechte so ändern, dass Mitglieder der Gruppe abs Schreibrechte haben
  mkdir -p /var/abs/local
  chown root:abs /var/abs/local
  chmod 775 /var/abs/local


===Paketdateien herunterladen===
===Paketdateien herunterladen===
Alle Dateien die nötig sind, um ein Paket zu erstellen, sind in einem Tarball gespeichert. Dieser kann von der entsprechenden Seite unter dem Link ''Tarball'' im AUR heruntergeladen werden.
Alle Dateien die nötig sind, um ein Paket zu erstellen, sind in einem Tarball gespeichert. Diesen kann man herunterladen indem man auf der Seite des Paketes im AUR auf den ''TARBALL''-Link klickt oder direkt, z. B. per wget, über die URL ''http://aur.archlinux.org/packages/beispiel-paket/beispiel-paket.tar.gz''


===Paket erstellen===
===Paket erstellen===
{{achtung|Um Schädem am System zu verhindern, sollten Pakete nur als normaler User gebaut werden!}}
Das Paket wird mittels ''makepkg'' erstellt. Dazu wechselt man in das Verzeichnis für eigene Pakete (hier ''/var/abs/local''), entpackt den Tarball, wechselt in das Paket-Verzeichnis und führt ''makepkg'' aus (alles als normaler User).
Das Paket wird mittels ''makepkg'' erstellt. Dazu wechselt man in das Verzeichnis in dem sich der Tarball begindet, entpackt ihn, wechselt in das Paket-Verzeichnis und führt ''makepkg'' aus:
  cd /var/abs/local
 
   tar -xvzf /<Pfad zum Tarball>/beispiel-paket.tar.gz
   tar -xvzf /<Pfad zum Tarball>/beispiel-paket.tar.gz
   cd beispiel-paket
   cd beispiel-paket
Zeile 21: Zeile 39:


===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'' sollte sowohl zum Aktualisieren bereits installierter Pakete als auch für das Installieren von komplett neuen Paketen benutzt werden.
   pacman -U beispiel-paket-*.pkg.tar.gz
   pacman -U beispiel-paket-*.pkg.tar.gz


==Hilfsprogramme für AUR==
===Yaourt===
===Yaourt===
Mit [[yaourt]] bietet Arch ein sehr komfortables Programm, welches die oben genannten Schritte auf ein
Mit [[yaourt]] bietet Arch ein sehr komfortables Programm, welches die oben genannten Schritte auf ein
   yaourt -S aur-beispiel-programm
   yaourt -S aur-beispiel-programm
beschränkt.
beschränkt. Dieses muss jedoch zuvor noch aus dem AUR gebaut werden.
 
    
    
[[Kategorie:ArchLinux Projekte]]
[[Kategorie:ArchLinux Projekte]]
[[Kategorie:Paketverwaltung]]
==Links==
*[[Pacman]]
*[[Abs]]

Version vom 16. März 2009, 20:51 Uhr

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


Was ist das AUR?

Das ArchLinux User-Community Repository (AUR) ist eine Sammlung von PKGBUILDs, den Bauanleitungen für ARCH-Pakete. Jeder kann dort seine Pakete veröffentlichen und anderen zur Verfügung stellen. Um die Funktionen des AUR benutzen zu können, ist eine Registrierung auf aur.archlinux.org nötig.

Ein Paket aus dem AUR installieren

Fakeroot installieren

Um ein Paket als normaler User zu erstellen muss das Paket fakeroot installiert werden. Es ist zu empfehlen Pakete als normaler User und nicht als Root zu erstellen, um zu verhindern, dass das System beschädigt wird falls etwas schief geht.

 pacman -S fakeroot

Alle benötigten Pakete installieren

Um alle zum Kompilieren und Paketeerstellen benötigten Pakete zu installieren, empfiehlt es sich, das Metapaket base-devel zu installieren (Fakeroot ist dabei eingeschlossen).

 pacman -S base-devel

Ein Verzeichnis für eigene Pakete wählen

Als nächstes muss man sich überlegen wo man eigene Pakete erstellen/speichern will. Es ist zu empfehlen sie unter /var/abs/local zu erstellen. Man kann aber natürlich auch ein anderes Verzeichnis, z. B. /home/<user>/Pakete, verwenden. Auf jeden Fall ist darauf zu achten, dass der User Schreibrechte in dem Verzeichnis hat, damit die Pakete als nicht-Root-User erstellt werden können.

Achtung: Wenn man sich entschieden hat ein Verzeichnis unterhalb von /var/abs zu verwenden sollte man auf es auf jeden Fall /var/abs/local nennen, da alle anderen Verzeichnisse (außer die für die Repos; core, extra, ect.) beim aktualisieren des ABS Baumes gelöscht werden!

Im Folgenden wird beschrieben wie man vorgeht um die Pakete unter /var/abs/local zu erstellen. Verwendet man ein Verzeichnis unterhalb von /home/<user>, entfallen die nächsten Schritte, da bereits Schreibrechte bestehen.

  • Die Gruppe abs erstellen
 groupadd abs
  • den User der Gruppe abs hinzufügen (danach aus- und wieder einloggen damit die Änderungen wirksam werden)
gpasswd -a <user> abs
  • Verzeichnis /var/abs/local erstellen, der Gruppe abs zuordnen und die Zugriffsrechte so ändern, dass Mitglieder der Gruppe abs Schreibrechte haben
 mkdir -p /var/abs/local
 chown root:abs /var/abs/local
 chmod 775 /var/abs/local

Paketdateien herunterladen

Alle Dateien die nötig sind, um ein Paket zu erstellen, sind in einem Tarball gespeichert. Diesen kann man herunterladen indem man auf der Seite des Paketes im AUR auf den TARBALL-Link klickt oder direkt, z. B. per wget, über die URL http://aur.archlinux.org/packages/beispiel-paket/beispiel-paket.tar.gz

Paket erstellen

Das Paket wird mittels makepkg erstellt. Dazu wechselt man in das Verzeichnis für eigene Pakete (hier /var/abs/local), entpackt den Tarball, wechselt in das Paket-Verzeichnis und führt makepkg aus (alles als normaler User).

 cd /var/abs/local
 tar -xvzf /<Pfad zum Tarball>/beispiel-paket.tar.gz
 cd beispiel-paket
 makepkg

Paket installieren

Das soeben erstellte Paket kann nun (als root) mittels Pacman installiert werden. pacman -U sollte sowohl zum Aktualisieren bereits installierter Pakete als auch für das Installieren von komplett neuen Paketen benutzt werden.

 pacman -U beispiel-paket-*.pkg.tar.gz

Yaourt

Mit yaourt bietet Arch ein sehr komfortables Programm, welches die oben genannten Schritte auf ein

 yaourt -S aur-beispiel-programm

beschränkt. Dieses muss jedoch zuvor noch aus dem AUR gebaut werden.