[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ suivant ]
Nous devrions maintenant être prêts à construire le paquet.
Allez dans le répertoire principal du programme et lancez ceci :
dpkg-buildpackage -rfakeroot
Ceci fera tout pour vous. Il va :
nettoyer l'arbre des sources (debian/rules clean), en utilisant
fakeroot
construire le paquet source (dpkg-source -b)
construire le programme (debian/rules build)
construire le paquet binaire (debian/rules binary), en utilisant
fakeroot
signer le fichier source .dsc, en utilisant gnupg
créer et signer le fichier de téléchargement .changes, en
utilisant dpkg-genchanges
et gnupg
.
La seule entrée qui vous sera demandée est votre phrase de passe secrète GPG, deux fois.
Une fois que c'est fait, vous verrez les fichiers suivants dans le répertoire
au-dessus (~/gentoo/
) :
gentoo_0.9.12.orig.tar.gz
Ceci est le code source original, simplement renommé pour être conforme aux
standards Debian. Notez qu'il a été créé en utilisant l'option
« -f » du programme dh_make
quand nous l'avons
initialement appelé.
gentoo_0.9.12-1.dsc
Ceci est un résumé du contenu du code source. Ce fichier est généré à partir
du fichier « control », et est utilisé pour décompresser les sources
avec dpkg-source(1)
. Ceci est un fichier signé en GPG, de sorte
que les gens peuvent être sûrs qu'il s'agit bien du vôtre.
gentoo_0.9.12-1.diff.gz
Ce fichier compressé contient chacune des additions que vous avez faites au
code source original, sous une forme connue comme « différence
unifiée ». Il est créé et utilisé par dpkg-source(1)
.
Attention : si vous ne nommez pas le paquet source original
nomdupaquet_version.orig.tar.gz, dpkg-source
échouera à générer le
fichier .diff.gz correctement.
Si quelqu'un d'autre veut recréer votre paquet depuis le début, il peut facilement le faire en utilisant ces trois fichiers. La procédure d'extraction est facile : copier simplement ces trois fichiers quelque part et lancer dpkg-source -x gentoo_0.9.12-1.dsc.
gentoo_0.9.12-1_i386.deb
Ceci est le paquet binaire finalisé. Vous pouvez utiliser dpkg
pour l'installer ou le retirer comme tout autre paquet.
gentoo_0.9.12-1_i386.changes
Ce fichier contient toutes les modifications faites dans la révision courante du paquet, et est utilisé par les programmes de maintenance des archives FTP Debian pour y installer les paquets binaires et sources. Il est partiellement généré à partir du fichier « changelog » et du fichier .dsc. Ce fichier est signé en GPG, de sorte que les gens peuvent être sûrs qu'il s'agit bien du vôtre.
Au fur et à mesure que vous travaillez sur le paquet, son comportement va changer et de nouvelles capacités seront ajoutées. Les gens qui téléchargent votre paquet peuvent lire ce fichier et voir rapidement ce qui a changé. Les programmes de maintenance des archives Debian vont aussi poster le contenu de ce fichier sur la liste de distribution debian-devel-change.
Les longues chaînes de chiffres dans les fichiers .dsc et .changes sont des
sommes MD5 pour les fichiers mentionnés. Les personnes téléchargeant vos
fichiers peuvent les tester avec md5sum(1)
et si les fichiers ne
correspondent pas, elles sauront que le fichier a été corrompu ou qu'il a été
falsifié.
Avec un paquet imposant, vous ne voudrez sans doute pas reconstruire depuis le
début chaque fois que vous faites une petite modification à
debian/rules
. Pour tester, vous pouvez faire un fichier .deb sans
reconstruire les sources amont comme ceci :
fakeroot debian/rules binary
Une fois que vous avez fini vos ajustements, souvenez-vous de reconstruire en suivant la procédure correcte ci-dessus. Vous pouvez ne pas être capable de télécharger correctement si vous essayez de télécharger des fichiers .deb construits comme ceci.
debuild
Vous pouvez automatiser encore plus le processus de construction avec la
commande debuild
. Voir debuild(1)
.
La configuration de la commande debuild peut être faite via
/etc/devscript.conf
ou ~/.devscript
. Je suggère au
moins les entrées suivantes:
DEBSIGN_KEYID="Votre_ID_Cle_GPG" DEBUILD_DPKG_BUILDPACKAGE_OPTS="-i -ICVS -I.svn"
Avec ceux-ci, vous pouvez construire des paquets en utilisant toujours votre clé GPG et éviter d'inclure des composants non désirés (c'est bon aussi pour le parrainage). Par exemple, nettoyer les sources et reconstruire le paquet depuis un compte utilisateur est simple comme :
debuild clean debuild
dpatch
Le simple usage des commandes dh_make
et
dpkg-buildpackage
va créer un unique et large ficher
diff.gz
qui contient les fichiers de maintenance de paquet dans
debian/
et les fichiers de différences par rapport aux sources.
Un tel paquet est un peu délicat à inspecter et à comprendre pour chaque
modification de l'arbre source par la suite. Ce n'est pas bien. [1]
Plusieurs méthodes pour la maintenance de l'ensemble de différences ont été
proposées et sont utilisées avec les paquets Debian. Le système
dpatch
est l'un des plus simples parmi ce genre de systèmes.
D'autres sont dbs, cdbs, etc.
Un paquet qui est empaqueté correctement avec le système dpatch
a
les modifications des sources clairement documentées comme des ensembles de
fichiers de différences dans debian/patches
et l'arbre source est
intact à l'extérieur du répertoire debian
. Si vous demandez à
votre parrain de télécharger votre paquet, cette séparation plutôt claire et
cette documentation de vos changements sont très importantes pour accélérer
l'examen du paquet par votre parrain. La méthode d'utilisation de
dpatch
est expliquée dans dpatch(1)
.
Quand quelqu'un (éventuellement vous-même) fournit par la suite une différence sur les sources, la modification du paquet avec dpatch est assez simple :
éditez la différence pour en faire une différence -p1 sur l'arbre source ;
ajoutez l'en-tête en utilisant dpatch patch-template
;
déposez-le dans debian/patches
;
ajoutez les noms de fichiers dpatch à debian/patches/00list
.
De plus, dpatch
a la capacité de créer des différences liées à
l'architecture en utilisant des macros CPP.
orig.tar.gz
pour le téléchargement
Lorsque vous téléchargez le paquet vers l'archive pour la première fois, vous
devez inclure les sources orig.tar.gz
originales. Si la version
du paquet n'est pas à une révision Debian -0 ou -t,
vous devez passer l'option « -sa » à la commande
dpkg-buildpackage
. D'un autre côté, l'option
« -sd » forcera l'exclusion des sources
orig.tar.gz
originales.
[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ suivant ]
Guide du nouveau responsable Debian
version 1.2.3, 18 janvier 2005.joy-mg@debian.org
adn+deb@diwi.org
debian-l10n-french@lists.debian.org
frederic.dumont@easynet.be