Freitag, 10. April 2009

Erstes Arch Paket ins AUR gestellt

Endlich habe ich mein erstes Paket ins AUR von Arch Linux gestellt. Arch Linux ist eine Linux Distribution, die sehr minimalistisch und einfach gehalten ist. Es wurde komplett neu via LFS aufgebaut, die Pakete werden nicht gepatchet sondern wie im Original ausgeliefert. Zum einen gibt es wie unter Ubuntu und Debian vorkompilierte, binäre Pakete, die mit dem Programm pacman installiert werden, zum anderen kann man auch mit yaourt Pakete aus dem AUR installieren, wobei wie unter Gentoo der Quellcode im Internet heruntergeladen, kompiliert und installiert wird. Im AUR wird jedem Benutzer die Möglichkeit geboten eigene Pakete reinzustellen, die dann von jedem Arch Linux aus installiert werden können. Schließlich beschloss ich, dass ich mein Testprojekt Lalala ins AUR stelle. Alles, was man dafür machen muss ist eine kleine Datei zu erstellen, in der ein paar Variablen gesetzt werden und eine Build-Funktion erstellt wird:
# Contributor: Simon Goller 

pkgname=lalala
pkgver=0.00.90
pkgrel=2
pkgdesc="An adventure in curses."
arch=('i686' 'x86_64')
url="http://neosam.github.com/bttext"
license=('GPL')
groups=('games')
depends=('python>=2.5')
makedepends=()
optdepends=()
provides=()
conflicts=()
replaces=()
backup=()
options=()
install=
source=(http://cloud.github.com/downloads/neosam/bttext/$pkgname-$pkgver.tgz)
noextract=()
md5sums=('1fedf72a2f0b80cf66f63ee3386820bf')

build() {
 cd $srcdir/$pkgname-$pkgver
 mkdir -p $pkgdir/usr/share/lalala/ || return 1
 mkdir -p $pkgdir/usr/bin/ || return 1
 cp -r * $pkgdir/usr/share/lalala/ || return 1
 cp lalala.sh $pkgdir/usr/bin/ || return 1
 echo $pkgdir
 ls $pkgdir
}
Dabei muss man bei der build methode darauf achten, dass man nicht ins echte Root-Verzeichnis installiert, sondern in $pkgdir, da ein tar.gz erstellt wird, das das deinstallieren ermöglicht. Jetzt musste ich mich nur noch im AUR registrieren, diese Datei hochladen und schon konnte ich via yaourt -S lalala mein Paket installieren. Arch Rockz :-)