makepkg (Français)
makepkg est utilisé pour construire des paquets pouvant être installés par pacman, c'est un script automatisant les étapes de construction, liste en vrac et non exhaustive:
- Téléchargement et validation des sources
- Vérification (et éventuellement installation) des dépendances
- Configuration spécifique pour la compilation
- Installation en appelant pacman
Configuration
Le fichier de configuration système est /etc/makepkg.conf
, on peut aussi le configurer au niveau de l'utilisateur avec $HOME/.makepkg.conf
, se référer à makepkg.conf(5) pour une liste complète des options.
Quelques exemples :
Option | Description | Défaut | Exemple |
---|---|---|---|
PKGDEST | Définit où placer les paquets construits | . | $HOME/paquets/repo |
SRCDEST | Emplacement des sources téléchargées | . | $HOME/paquets/pkgsrc |
SRCPKGDEST | Définit où placer les paquets source | . | $HOME/paquets/src |
PACKAGER | Nom et mail de celui qui construit le paquet | ||
MAKEFLAGS | Options à passer à make | -j3 | |
PKGEXT | Extension des paquets | .pkg.tar.xz | |
SRCEXT | Extension des paquets source | .src.tar.gz |
Utilisation
Avant toute utilisation, il faut s'assurer d'avoir le groupe base-devel installé sur votre système, les dépendances appartenant à ce groupe sont implicites :
pacman -S base-devel
makepkg a besoin d'un PKGBUILD dans le répertoire courant, ensuite il suffit de lancer :
makepkg
Si le paquet à construire demande des dépendances non encore installées, vous pouvez les installer pendant la compilation avec :
makepkg -s
-s
équivaut à:
pacman -S --asdeps dépendance1 dépendance2 ... dépendanceNCeci permet une installation non explicite (les dépendances pourront ainsi être facilement retirées). En outre, makepkg passe par pacman, si certaines dépendances se trouvent sur AUR, vous devrez les installer à part ou via un assistant.
Si le paquet n'est pas destiné à être installé :
makepkg -sr
installera les dépendances et les supprimera à la fin.
Pour construire et installer directement votre paquet avec pacman :
makepkg -si
-i
revient à faire:
pacman -U pkgname-pkgver.pkg.tar.xz