[ précédent ] [ Table des matières ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ suivant ]
Vous avez probablement choisi le paquet que vous voulez créer. La première
chose à faire est de vérifier si le paquet se trouve déjà dans la distribution.
Si vous utilisez la distribution « stable », le mieux est d'aller sur
la page de recherche des
paquets
. Si vous utilisez une distribution « unstable »
courante, vérifiez-le avec ces commandes :
dpkg -s programme dpkg -l '*programme*'
Si le paquet existe déjà, et bien, installez-le :-). S'il se trouve qu'il
est orphelin — si son responsable est « Debian QA Group », vous
devriez pouvoir le reprendre. Consultez la liste des paquets
orphelins
et la liste des paquets
disponibles pour adoption
pour vérifier que le paquet est bien
disponible.
Si vous pouvez adopter le paquet, récupérez les sources (avec quelque chose comme apt-get source nom_du_paquet) et examinez-les. Malheureusement ce document n'inclut pas d'informations exhaustives sur l'adoption de paquets. Cependant vous ne devriez pas avoir de problèmes pour comprendre comment le paquet fonctionne puisque quelqu'un a déjà fait la configuration pour vous. Continuez quand même à lire ce document, une bonne partie des conseils qui suivent seront applicables dans votre cas.
Si le paquet est nouveau, et que vous décidez que vous voulez le voir dans Debian, procédez comme suit :
vérifiez que personne d'autre ne travaille déjà sur ce paquet en consultant
la liste des
paquets en cours de création
. Si quelqu'un travaille déjà dessus,
contactez-le si vous pensez que vous le devez. Sinon, trouvez un autre
programme intéressant dont personne n'est responsable.
le programme doit avoir une licence, si possible libre
conformément aux principes du
logiciel libre selon Debian
. S'il n'est pas conforme à certaines de
ces règles mais peut quand même être distribué, il peut malgré tout être inclus
dans les sections « contrib » ou « non-free » de Debian.
Si vous ne savez pas trop où il doit aller, postez la licence sur debian-legal@lists.debian.org
et demandez conseil.
le programme ne devrait certainement pas être setuid root, ou encore mieux, il ne devrait pas être setuid ou setgid quoi que ce soit.
le programme ne devrait pas être un démon, ou quelque chose qui va dans les répertoires */sbin, ou ouvre un port comme root.
le programme devrait être sous forme de binaire exécutable, les bibliothèques sont plus dures à gérer.
il devrait être bien documenté, et le code doit être compréhensible (c'est-à-dire, pas volontairement obscur).
vous devriez contacter le(s) auteur(s) du programme pour vérifier qu'il(s) est(sont) d'accord pour la création du paquet. Il est important d'être à même de consulter le(s) auteur(s) à propos du programme en cas de problèmes spécifiques à celui-ci, aussi n'essayez pas de créer un paquet à partir de programmes non maintenus.
enfin, vous devez être sûr qu'il fonctionne, et l'avoir testé pendant quelques temps.
Bien sûr, toutes ces remarques ne sont que des mesures de sécurité, et ont pour but de vous sauver d'utilisateurs fous de rage si vous faites une erreur dans un démon setuid. Quand vous aurez plus d'expérience dans la création des paquets, vous serez capable de faire de tels paquets, mais même les développeurs les plus expérimentés consultent la liste de discussion debian-mentors en cas de doute. Et là les gens seront heureux de vous aider.
Pour plus d'informations à ce sujet, consultez la Référence du Développeur.
La première chose à faire est de trouver et de télécharger le paquet original. Je suppose que vous avez déjà le fichier source que vous avez pris sur la page web de l'auteur. Les sources pour les logiciels Unix libres sont d'habitude au format tar/gzip avec l'extension .tar.gz, et contiennent normalement un sous-répertoire nommé programme-version avec toutes les sources dedans. Si le source de votre programme est disponible dans une autre sorte d'archive (par exemple, le programme se termine par '.Z' ou '.zip'), décompressez-le avec les outils adéquats ou demandez sur la liste de discussion debian-mentors si vous n'êtes pas sûr quant à la façon de le décompresser correctement (indice : utilisez « file archive.extension »).
Comme exemple, je vais utiliser un programme nommé « gentoo », un gestionnaire de fichiers pour X utilisant GTK+. Sachez qu'il y a déjà un paquet pour ce programme, et qu'il a changé substantiellement depuis que ce texte a été écrit la première fois.
Créez un sous-répertoire sous votre répertoire racine nommé
« debian » ou « deb » ou quoi que ce soit d'adéquat (ou le
nom du programme, ~/gentoo
, ferait l'affaire dans notre cas).
Placez l'archive téléchargée dedans, et décompressez-la avec « tar -xzf
gentoo-0.9.12.tar.gz ». Assurez-vous qu'il n'y a pas d'erreurs, même
« sans importance », parce qu'alors il y aura des problèmes pour
décompresser sur les systèmes d'autres personnes, dont les outils de
décompression pourraient ne pas gérer ces erreurs.
Maintenant vous avez un autre sous-répertoire, nommé « gentoo-0.9.12 ». Allez dans ce répertoire et lisez attentivement la documentation fournie. Il s'agit d'habitude de fichiers nommés README*, INSTALL*, *.lsm ou *.html. Dedans, vous devez trouver les instructions pour compiler et installer correctement le programme (elles supposent très probablement que vous voulez installer dans le répertoire /usr/local/bin ; ce n'est pas le cas, mais on reviendra sur ce point plus tard dans Installer dans un sous-répertoire, Section 3.1).
La méthode varie d'un programme à l'autre, mais de nombreux programmes modernes viennent avec un script « configure » qui configure les sources selon votre système et s'assure que votre système est à même de les compiler. Après la configuration avec « ./configure », les programmes sont compilés avec « make ». Certains d'entre eux supportent « make check », pour se tester eux-mêmes. L'installation dans les répertoires de destination est généralement obtenue avec « make install ».
Maintenant, essayez de compiler et d'exécuter votre programme, pour vous assurer qu'il fonctionne correctement et ne casse rien d'autre quand il est installé ou qu'il tourne.
Sachez aussi que vous pouvez généralement entrer « make clean » (ou mieux, « make distclean ») pour nettoyer le répertoire de compilation. Parfois, il y a même un « make uninstall » qui peut être utilisé pour retirer tous les fichiers installés.
Vous devriez commencer la création du paquet avec un répertoire source complètement propre (originel), ou plus simplement avec les sources fraîchement décompressées.
Pour que le paquet soit correctement construit, vous devez changer le nom du programme en minuscule (si ce n'est déjà fait), et vous devriez changer le répertoire source en <nompaquet>-<version>.
Si le nom du programme consiste en plus d'un mot, réduisez-le à un mot, ou faites une abréviation. Par exemple, le paquet du programme « John's little editor for X » serait nommé johnledx, ou jle4x, ou quoi que vous vouliez, aussi longtemps qu'il reste sous une limite raisonnable, en général 20 caractères.
Vérifiez aussi la version exacte du programme (qui sera inclus dans la version du paquet). Si ce logiciel n'est pas numéroté avec un numéro de version comme X.Y.Z, mais avec une date de distribution, vous pouvez utiliser cette date comme numéro de version, avec comme préfixe « 0.0. » (juste au cas où les responsables amont décident de distribuer une jolie version comme 1.0). Donc, si la date est le 19 décembre 1998, vous pouvez utilisez 0.0.19981219 comme chaîne pour la version.
Certains ne seront pas numérotés du tout, auquel cas vous devriez contacter le responsable amont pour voir s'il a une autre méthode de gestion des révisions.
Vérifiez que vous êtes dans le répertoire du code source du programme, et lancez ceci :
dh_make -e votre.adresse@de.responsable -f ../gentoo-0.9.12.tar.gz
Bien sûr, remplacez la chaîne « votre.adresse@de.responsable » avec
votre adresse électronique pour l'inclure dans l'entrée changelog et dans
d'autres fichiers, et le nom du fichier par le nom de la source d'archive
originale. Voyez dh_make(1)
pour plus de détails.
Des informations sont affichées. Il vous demande quelle sorte de paquet vous voulez créer. Gentoo est un paquet binaire simple — il ne crée qu'un exécutable, et donc un seul fichier .deb — donc nous sélectionnons la première option, avec la touche « s », vérifions l'information sur l'écran et confirmons en pressant <Entrée>.
Après cette exécution de dh_make
, une copie de l'archive TAR est
créée sous gentoo_0.9.12.orig.tar.gz
dans le répertoire parent
pour permettre la création d'un paquet source Debian non natif avec le
diff.gz
. Veuillez noter deux aspects clés dans ce nom de
fichier :
le nom de paquet et la version sont séparés par « _ »
il y a « orig. » avant le « tar.gz ».
Rappelons-le, en tant que nouveau responsable, vous ne devriez pas créer des paquets compliqués, par exemple :
des paquets à exécutables multiples ;
des paquets de bibliothèque ;
des formats de fichier source n'étant ni en tar.gz ni tar.bz2 ;
une archive TAR source ayant des contenus non distribuables.
Ce n'est pas si difficile, mais cela requiert un peu plus de connaissances, et nous n'entrerons pas dans les détails ici.
Notez que vous ne pouvez exécuter dh_make
qu'une
fois, et qu'il ne se comportera pas correctement si vous l'exécutez à
nouveau dans le même répertoire déjà debianisé. Cela signifie aussi que vous
devrez utiliser une autre méthode pour distribuer une nouvelle révision ou une
nouvelle version de votre paquet dans le futur. Pour plus d'informations à ce
sujet, lisez Mettre à jour le paquet, Chapitre
9.
[ 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