====== 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 : [[howto:archlinux:pkgbuild|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: [[howto:archlinux:yaourt|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 ===== * [[http://wiki.archlinux.org/index.php/ABS_-_The_Arch_Build_System|Page originale]]\\ * [[:howto:archlinux:pkgbuild| le fichier PKGBUILD]] * [[:howto:archlinux:man_pkgbuild|page man francophone de PKGBUILD.5]] * [[:howto:archlinux:archpackagingstandards|Standard de création de paquetage pour Arch Linux]] * [[http://archlinux.fr/yaourt/| Manuel Yaourt]] ====== Crédit ====== --- //[[vincentxavier@archlinux.fr|vincentxavier]] 26/11/2006 19:02// \\ --- //[[arnaud.fortier@archlinux.fr|warnaud]] 29/05/2007 18:00//