Ce document va essayer de décrire à l'utilisateur Debian courant (et au développeur en devenir) la construction d'un paquet Debian GNU/Linux dans un langage courant, et complété avec des exemples. Il y a un vieux proverbe romain, Longum iter est per preaecepta, breve et efficax per exempla! (C'est long par la règle, court et efficace par l'exemple!).
Une des choses qui font de Debian une distribution de si haut niveau est son système de paquets. Bien qu'il existe une grande quantité de logiciels dans le format Debian, parfois vous devrez installer un logiciel qui ne l'est pas. Vous pouvez vous demander comment faire vos propres paquets et peut-être pensez vous que c'est une tâche très difficile. Eh bien, si vous êtes vraiment un débutant sous Linux, c'est dur, mais si vous étiez un débutant, vous ne seriez pas en train de lire ce document maintenant. :-) Vous devez en savoir un peu sur la programmation Unix, mais vous n'avez certainement pas besoin d'être un magicien.
Les nouvelles versions de ce document devraient toujours être disponible
'online' sur http://www.debian.org/doc/maint-guide
et dans le paquet 'maint-guide'.
Avant de commencer quoi que ce soit, vous devriez vous assurer que vous avez correctement installé certains paquets supplémentaires nécessaires pour le développement. Notez que la liste ne contient aucun paquet marqué 'essentiel' ou 'requis' - nous supposons que vous avez déjà installé ceux-ci.
Ce document a été écrit alors que la distribution 2.1 'slink' était la version stable officielle de Debian, et la 2.2 'potato' était en cours de création, donc les paquets nommés ici sont principalement ceux de 'potato'.
Les paquets suivants sont fournis dans l'installation standard de Debian 2.1, de sorte que vous les avez probablement déjà (ainsi que les paquets supplémentaires dont ils dépendent). Néanmoins, vous devriez le vérifier avec `dpkg -s paquet`.
cpp(1)
)
cpio(1)
)
dpkg-source(1)
)
file(1)
)
gcc(1)
, g++(1)
,
g77(1)
, gpc(1)
)
imake(1)
, xmkmf(1)
, autoconf(1)
,
automake(1)
)
patch(1)
)
perl(1)
)
Vous devrez probablement installer vous-même les programmes suivants de la section « devel » de la distribution :
dh_make(1)
,
debhelper(1)
, /usr/share/doc/debhelper/README)
fakeroot(1)
)
lintian(1)
,
diffstat(1)
, /usr/share/doc/lintian/lintian.html/index.html)
Enfin, ces paquets très importants sont dans la section doc de la distribution :
Vous avez aussi besoin du paquet de cryptographie, soit PGP (les paquets pgp-*) ou GPG (le paquet gnupg), pour signer numériquement votre paquet. Ceci est spécialement important si vous voulez distribuer votre paquet à d'autres personnes (et vous le ferez si votre paquet est inclus dans la distribution Debian). Cependant, à cause d'une loi d'exportation américaine plutôt stupide, vous ne pouvez pas simplement le télécharger de votre site FTP Debian le plus proche. Cependant, Debian fournit ces paquets via un site qui n'est pas physiquement situés aux USA, nommé non-US.debian.org (ftp://non-us.debian.org/debian-non-US/). Votre site FTP va avoir un fichier nommé README.non-us, qui vous dira comment trouver un miroir plus proche de ce site.
Les courtes descriptions qui sont données ci-dessus ne servent que
d'introduction à ce que fait chaque paquet. Avant de continuer, veuillez lire
attentivement la documentation de chaque programme, au moins l'usage standard.
Cela peut vous sembler fastidieux maintenant, mais plus tard vous serez
très content de l'avoir fait. Remarque: debmake est un
paquet qui contient certains programmes qui fonctionnent d'une manière
similaire à dh-make, mais son usage spécifique n'est pas
couvert dans ce document. Veuillez lire the Debmake manual
pour plus
d'information.
Vous pouvez faire deux types de paquets : source et binaire. Un paquet source contient le code que vous pouvez compiler en un programme. Un paquet binaire contient juste le programme fini. Ne mélangez pas les termes comme source du programme et le paquet source du programme ! Veuillez lire les autres manuels si vous avez besoin de plus de détails sur la terminologie.
Debian utilise le terme « responsable » pour la personne qui fait des paquets, « auteur » pour la personne qui a fait le programme, et « responsable amont » pour la personne qui maintient le programme actuellement. D'ordinaire l'auteur et le responsable amont sont une seule et même personne. Si vous avez écrit un programme, et que vous voulez qu'il soit dans Debian, vous pouvez remplir une demande pour devenir un responsable.
Après que vous avez construit votre paquet (ou pendant la création), vous devrez devenir responsable Debian officiel si vous souhaitez que votre programme soit dans la prochaine distribution (si le programme est utile, pourquoi pas ?) Ce processus est expliqué dans la Référence du développeur. Veuillez le lire.
jrodin@jagor.srce.hr
frederic.dumont@freeworld.be