Table des matières
ABS - The Arch Building System
Introduction
Le Arch Build System (acronyme ABS) est utile pour
- Créer de nouveaux paquets lorsque le logiciel n'a pas encore été packagé
- Améliorer des paquets existant pour répondre à vos attentes (en ajoutant des options)
- Reconstruire son système entièrement avec des flags personalisés pour le compilateur
ABS n'est pas nécessaire pour une utilisation courante de Arch Linux, mais il est utile aux gens qui veulent aller un peu plus loin.
Cet how-to essaie de donner une vue d'ensemble d'ABS et des packages sous Arch Linux. Ce n'est pas la référence. Pour une documentation plus complète, merci de lire les pages de manuel (man
).
Installation
Pour utiliser ABS, il vous faudra cvsup
et wget
:
pacman -Sy cvsup wget
ou
yaourt -Sy cvsup wget
L'arbre ABS
La première fois, lancez juste
# abs
L'arbre d'ABS se synchronisera et vous obtiendrez ceci :
|- | -- base/ |- | ||-- autoconf/ |- | ||-- automake/ |- | ||-- ... |- | -- devel/ |- | -- ... |- | -- extra/ |- | || -- deamons/ |- | || || -- acpid/ |- | || || || -- PKGBUILD ... ... ... ...
L'arbre est placé dans /var/abs
L'arbre ABS a la même structure que la base de données de paquet:
- Premier niveau : les catégories (x11/ lib / gnome …)
- Deuxième niveau : les paquets (rox / libsvg / nautilus …)
- Les fichiers utiles à la créations du paquet via le PKGBUILD
Il est conseillé de construire ses paquets dans un répertoire appelé 'local' dans /var/abs Mais il est possible de les construire dans votre /home sans problèmes. Si vous modifiez des PKGBUILDS, fichiers dans l'arbre ils risquent d'être effacer à la prochaine synchronisation d'abs.
Le premier téléchargement de l'arbre est le plus long, ensuite il n'y aura que les mises à jour qui seront téléchargées.
Maintenant qu'on a ABS on va l'utiliser
Modification/Création d'un PKGBUILD
Tout d'abord, pour se familiariser avec la syntaxe des PKGBUILD il est sage de lire : Description d'un pkgbuild
Prenons un exemple simple, nous allons reconstruire un paquet :
On le cherche dans l'arborescence :
find /var/abs -name "truc"
ou via slocate :
slocate truc | grep ^/var/abs
Ensuite on copie le répertoire du paquet dans /var/abs/local par exemple:
cp /var/abs/extra/truc /var/abs/local
on se déplace dans le répertoire créé :
cd /var/abs/local/truc
On peut ainsi éditer le PKGBUILD, les autres fichiers, en rajouter.
Note: Ne pas oublier de changer le n° de version de pkgrel
Pour compiler il vous faut absolument pkgconfig et fakeroot
pacman -S pkgconfig fakeroot
Ensuite on compile le tout à l'aide de la commande suivante :
makepkg
S'il n'y a pas d'erreurs, un fichier truc-$pkgver-$pkgrel-$arch.pkg.tar.gz est créé.
Pour l'installer :
pacman -A truc-$pkgver-$pkgrel-$arch.pkg.tar.gz
ou si une version antérieure existe :
pacman -U truc-$pkgver-$pkgrel-$arch.pkg.tar.gz
Méthode alternative - yaourt
Document référence: yaourt
Un paquet installé depuis yaourt peut-être édité automatiquement pendant son installation, il est même possible d'exporter le répertoire avec le PKGBUILD et les fichiers nécessaires où l'on veut.
yaourt -S truc --export /home/moi/repo
Liens
Crédit
— vincentxavier 26/11/2006 19:02
— warnaud 29/05/2007 18:00