1 <!DOCTYPE debiandoc PUBLIC "-//DebianDoc//DTD DebianDoc//EN" [
2 <!-- include version information so we don't have to hard code it
3 within the document -->
4 <!entity % versiondata SYSTEM "version.ent"> %versiondata;
5 <!-- common, language independant entities -->
6 <!entity % commondata SYSTEM "common.ent" > %commondata;
7 <!-- CVS revision of this document -->
8 <!entity cvs-rev "$Revision: 1.13 $">
10 <!-- if you are translating this document, please notate the RCS
11 revision of the developers reference here -->
13 <!entity cvs-en-rev "1.65">
19 - bugs in upstream versions should be reported upstream!
20 - add information on how to get accounts on different architectures
21 - talk about CVS access, other ways to submit problems
22 - add information on how you can contribute w/o being an official
24 - "official port maintainer" ? (cf. glibc-pre2.1)
29 <title>Manuel de référence du développeur Debian
31 <author>Adam Di Carlo, responsable actuel <email>aph@debian.org</email>
32 <author>Christian Schwarz <email>schwarz@debian.org</email>
33 <author>Ian Jackson <email>ijackson@gnu.ai.mit.edu</email>
35 <author>version française par Antoine Hulin <email>antoine.hulin@origan.fdn.fr</email>
36 <author>avec la participation de Alain Meessen
37 <author>et des membres de la liste
38 <email>debian-l10n-french@lists.debian.org</email>
39 <version>version &version;, &date-fr;
44 Copyright ©1998 – 2001 Adam Di Carlo</copyrightsummary>
46 Copyright ©1997, 1998 Christian Schwarz.</copyrightsummary>
49 Ce manuel est un logiciel libre ; il peut être redistribué et/ou modifié selon
50 les termes de la licence grand public du projet GNU (GNU GPL), telle que
51 publiée par la « Free Software Foundation » (version 2 ou toute
55 Il est distribué dans l'espoir qu'il sera utile, mais <em>sans aucune
56 garantie</em>, sans même la garantie implicite d'une possible valeur marchande
57 ou d'une adéquation à un besoin particulier. Consultez la licence grand public
58 du projet GNU pour plus de détails.
61 Une copie de la licence grand public du projet GNU est disponible dans le
62 fichier &file-GPL; de la distribution Debian GNU-Linux ou sur la toile : <url
63 id="&url-gpl" name="la licence grand public du projet GNU">. Vous pouvez
64 également l'obtenir en écrivant à la &fsf-addr;.
74 <chapt id="scope">Introduction
76 <sect>Portée de ce document
79 Le but de ce document est de donner une vue d'ensemble des procédures à
80 suivre et des ressources mises à la disposition des développeurs Debian.
83 Les procédures décrites ci-après expliquent entre autre comment devenir
84 responsable Debian (<ref id="new-maintainer">), comment installer des nouveaux
85 paquets dans l'archive (<ref id="upload">), quand et comment faire un portage
86 ou une mise à jour du paquet d'un autre responsable (<ref id="nmu">), comment
87 déplacer, effacer ou abandonner un paquet (<ref id="archive-manip">) et
88 comment gérer les bogues (<ref id="bug-handling">).
91 Les ressources présentées dans ce manuel incluent les listes de diffusion et
92 les serveurs (<ref id="servers">), une présentation de la structure de
93 l'archive Debian (<ref id="archive">), des explications sur les serveurs qui
94 acceptent les mises à jour de paquets (<ref id="upload-ftp-master">) et une
95 présentation des outils qui peuvent aider un responsable à améliorer la
96 qualité de ses paquets (<ref id="tools">).
99 Ce manuel de référence ne présente pas les aspects techniques liés aux paquets
100 Debian. Il ne décrit pas non plus comment les créer. Il ne décrit pas
101 non plus les règles que doivent respecter les paquets Debian. Cette
102 information est disponible dans le <url id="&url-debian-policy;" name="Debian
106 De plus ce document <em>n'est pas l'expression d'une politique
107 officielle</em>. Il contient de la documentation sur le système Debian et des
108 conseils pratiques largement suivis. C'est une sorte de guide pratique.
114 <sect>Introduction à la version française
119 Bien que ce document soit en français, l'activité de responsable Debian
120 implique une maîtrise de la langue anglaise. Le projet Debian est un projet
121 international auquel participent des japonais, néo-zélandais, américains,
122 allemands, finlandais, français, espagnols, danois...
125 En conséquence la langue utilisée dans toutes les listes de diffusion
126 destinées aux développeurs est l'anglais et les rapports de bogue doivent être
127 rédigés en anglais. En fait, sauf exception rare, tout dialogue avec les
128 autres responsables Debian se fera en anglais quelque soit le média.
134 Cette section liste les termes techniques qui ont un sens spécifique
135 dans le projet Debian. Pour chacune de ces expressions vous trouverez la
136 traduction française utilisée dans ce manuel, une définition et une
137 référence à la section du manuel qui traite de ce sujet.
141 <item><em>Upload</em> : mise à jour, téléchargement (parfois
142 livraison). Opération qui consiste à télécharger un nouveau paquet
143 ou une nouvelle version de paquet dans l'archive Debian (<ref
146 <item><em>Non-maintainer upload (NMU)</em> : mise à jour indépendante.
147 Téléchargement d'une nouvelle version de paquet dans l'archive
148 Debian par une personne qui n'est pas officiellement responsable de ce
149 paquet(<ref id="nmu">).
151 <item><em>NMU source</em> : mise à jour indépendante source. Il
152 s'agit d'une mise à jour indépendante pour un paquet source (<ref
155 <item><em>NMU binaire</em> : mise à jour indépendante binaire.
156 Mise à jour indépendante pour un paquet binaire(<ref id="nmu-terms">).
158 <item><em>Bug Tracking System (BTS)</em> : système de suivi des
159 bogues. Il s'agit du système utilisé par le projet Debian pour suivre
160 les bogues et leur correction (<ref id="bug-handling">).
162 <item><em>Bug submitter</em> : rapporteur du bogue. Personne qui
163 envoie un rapport de bogue au système de suivi des bogues(<ref
166 <item><em>Release critical bug</em> : bogue remettant en cause la
167 distribution. Bogues de sévérité <em>critique</em>, <em>grave</em>
168 et <em>sérieuse</em>. Ces bogues ne doivent pas apparaître dans une
169 distribution <em>stable</em>. Ils doivent être corrigés ou bien les
170 paquets en cause doivent être supprimés (<ref id="rc-bug">).
172 <item><em>Unstable</em> : Nom de la distribution en cours de
173 développement. Cette distribution contient les paquets envoyés par
174 les développeurs. Ceux-ci étant humains, elle est parfois cassée (<ref
177 <item><em>Testing</em> : Nom de la distribution en test. Cette
178 distribution reçoit les paquets des développeurs qui ont passé une
179 période de deux semaines dans <em>unstable</em> et pour lesquels aucun
180 bogue sévère n'a été découvert. Cette distribution n'a pas été testée
181 en profondeur. Elle est cependant sensée être plus stable que
182 <em>unstable</em> (<ref id="life-cycle">).
184 <item><em>Frozen</em> : Nom de la distribution gelée. Cette
185 distribution apparaît pendant quelques mois avant la sortie d'une
186 nouvelle distribution stable. Elle est destinée à être testée en
187 profondeur et ne reçoit que des corrections de bogues (<ref
190 <item><em>Stable</em> : Nom de la distribution dite stable. Cette
191 distribution a été testée, validée et diffusée (<ref
194 <item><em>Debian maintainer</em> : responsable Debian, développeur
195 Debian (parfois mainteneur). Personne qui fait officiellement
196 partie du projet Debian. Elle a accès aux serveurs Debian et participe
197 au développement — au sens large — de la distribution (<ref
198 id="developer-duties">). La plupart des responsables font de la mise
199 en paquet mais il existe d'autres activités telles que documentation,
200 site web, création des cédéroms, administration des serveurs...
202 <item><em>Upstream version</em> : version amont. Il s'agit du
203 logiciel tel qu'il est fournit par le responsable amont — par
204 opposition à la version fournie par la distribution Debian. (Voir
205 <ref id="upstream-coordination">.)
207 <item><em>Upstream maintainer</em> : responsable amont ou développeur
208 amont. Personne(s) responsable(s) du développement ou de la
209 maintenance d'un logiciel. En général le responsable amont n'a rien à
210 voir avec le projet Debian (<ref id="upstream-coordination">).
212 <item><em>Debian keyring</em> : porte-clés Debian. Le porte-clés
213 Debian contient les clés publiques de tous les responsables Debian (<ref
216 <item><em>Work-needing and prospective packages (WNPP)</em> : paquets en
217 souffrance et paquets souhaités. La liste des paquets en
218 souffrance indique les paquets qui n'ont plus de responsable. La liste
219 des paquets souhaités indique les logiciels que des utilisateurs
220 aimeraient bien voir dans la distribution (<ref id="upload">).
225 <chapt id="new-maintainer">Devenir responsable Debian
231 Vous avez lu toute la documentation, vous comprenez l'intérêt de tout ce qui
232 se trouve dans le paquet exemple <package>hello</package> et vous vous
233 apprêtez à mettre en paquet votre logiciel préféré. Comment devenir
234 responsable Debian et intégrer votre travail au projet ?
237 Si vous ne l'avez pas encore fait vous pouvez commencer par vous inscrire à la
238 liste &email-debian-devel;.
241 Pour cela, envoyez un courrier à l'adresse
242 &email-debian-devel-req; avec le mot <tt>subscribe</tt> dans la ligne
243 <em>Objet</em><footnote><em>Subject</em> en anglais</footnote> de votre
244 message. En cas de problème, contactez l'administrateur de la liste
245 &email-listmaster;. Vous trouverez plus d'information dans la section <ref
249 Vous suivrez les discussions de cette liste (sans poster) pendant quelques
250 temps avant de coder quoi que ce soit et vous informerez la liste de votre
251 intention de travailler sur quelque chose pour éviter de dupliquer le travail
255 Une autre liste intéressante est &email-debian-mentors;. Voir la section <ref
256 id="mentors"> pour les détails. Le canal IRC <tt>#debian</tt> sur le réseau
257 <em>Linux People IRC</em> (c.-à-d. <tt>irc.debian.org</tt>) pourra aussi être
263 <sect id="registering">Devenir responsable Debian
266 Avant de décider de devenir responsable Debian, il vous faudra lire le <url
267 id="&url-social-contract;" name="Contrat social Debian">. Vous faire
268 enregistrer comme responsable implique que vous adhériez à ce contrat social
269 et que vous vous engagiez à le soutenir ; il est très important que les
270 responsables soient en accord avec les principes fondamentaux qui animent le
271 projet Debian GNU-Linux. Lire le <url id="&url-gnu-manifesto;" name="Manifeste
272 GNU"> est aussi une bonne idée.
275 Le processus d'enregistrement a pour but de vérifier votre identité et vos
276 intentions. Le nombre de personnes travaillant pour Debian GNU-Linux a atteint
277 &number-of-maintainers; et notre système est utilisé dans un certain nombre
278 d'endroits très importants : nous devons rester attentifs pour éviter un acte
279 malveillant. C'est pourquoi nous contrôlons les nouveaux responsables avant de
280 leur donner un compte sur nos serveurs et les autoriser à ajouter des paquets
284 Pour votre enregistrement il sera nécessaire d'envoyer les informations
285 suivantes<footnote>Voir la page <url id="&url-newmaint-checklist;"
286 name="Checklist for applicants">.</footnote> après une
287 première prise de contact à l'adresse &email-new-maintainer; :
294 Le <em>login</em> que vous voudriez avoir sur <tt>master</tt> (maximum
295 huit caractères) ainsi que l'adresse qui sera utilisée pour votre
296 inscription à la liste &email-debian-private; (il s'agira soit de
297 votre adresse personnelle soit de votre adresse <tt>debian.org</tt>
298 fraîchement acquise).
301 Un numéro de téléphone où nous pouvons vous joindre. Souvenez-vous que
302 l'équipe <em>New maintainer</em> appelle généralement le soir pour
303 limiter les coûts de communication longue distance. Ne donnez pas de
304 numéro professionnel à moins d'y être souvent le soir.
307 Une déclaration de vos intentions. C'est à dire, sur quel paquet vous
308 pensez travailler, à quel portage vous comptez participer ou comment
309 vous comptez contribuer au projet.
312 Une déclaration indiquant que vous avez lu et acceptez de soutenir le
313 <url id="&url-social-contract;" name="Contrat social Debian">.
316 Un moyen de vérifier votre identité réelle. Les moyens suivants feront
321 une clé OpenPGP signée par une signature connue telle qu'un
322 responsable Debian que vous aurez rencontré
323 <em>physiquement</em> ou un service d'authentification qui
324 vérifie votre identité (Verisign par exemple)<footnote>Un
325 service d'authentification qui vérifie votre adresse
326 électronique mais pas votre identité ne conviendra pas.
330 une copie (numérisée ou photocopiée) de n'importe quel
331 document officiel prouvant votre identité (certificat de
332 naissance, carte d'identité, permis de conduire, etc...). Pour
333 un envoi électronique, signez avec votre clé OpenPGP.
339 Si vous n'avez pas de clé OpenPGP, créez-la. Tout responsable a besoin d'une
340 clé OpenPGP pour signer et vérifier les mises à jour de paquets. Vous lirez
341 la documentation du logiciel de cryptographie que vous utiliserez car elle
342 contient des informations indispensables pour la sécurité de votre clé. Les
343 défaillances de sécurité sont bien plus souvent dues à des erreurs humaines
344 qu'à des problèmes logiciels ou à des techniques d'espionnage avancées. Voir
345 <ref id="key-maint"> pour plus d'information sur la gestion de votre clé
349 Debian utilise <prgn>GNU Privacy Guard</prgn> (paquet <package>gnupg</package>
350 version 1 ou supérieure comme standard de base). Vous pouvez aussi utiliser une
351 autre implémentation d'OpenPGP. OpenPGP est un standard ouvert basé sur la
352 <url id="&url-rfc2440;" name="RFC 2440">.
355 L'algorithme à clé publique recommandé pour les développements Debian est DSA
356 (parfois appelé « DSS » ou « DH\ElGamal »). Vous pouvez
357 aussi utiliser d'autres types de clés. La longueur de votre clé doit être au
358 minimum de 1024 bits ; il n'y a pas de raison d'utiliser une clé plus courte et le
359 faire serait beaucoup moins sûr. Votre clé doit être signée avec votre propre
360 identifiant ; cela évite les falsifications. <prgn>GNU Privacy Guard</prgn> le
361 fait automatiquement.
364 Souvenez-vous que l'un des noms de votre clé doit correspondre à l'adresse de
365 mainteneur officiel que vous indiquez dans vos paquets. Par exemple, j'affecte
366 le responsable du paquet <package>developers-reference</package> à « Adam
367 Di Carlo <aph@debian.org> » ; alors l'un des identifiants de ma clé
368 doit être cette même valeur « Adam Di Carlo
369 <aph@debian.org> ».
372 Si votre clé publique n'est pas sur un serveur public tel que &pgp-keyserv;,
373 reportez-vous à la documentation disponible localement dans &file-keyservs;.
374 Cette documentation explique comment mettre votre clé publique sur un serveur.
375 L'équipe <em>New maintainer</em> mettra votre clé publique sur les serveurs de
376 clés si elle n'y est pas déjà.
379 Pour cause de restriction sur le droit à l'exportation aux États-Unis,
380 certains paquets, dont <package>gnupg</package>, sont hébergés sur
381 des serveurs FTP en dehors des États-Unis. Vous trouverez les adresses
382 de ces serveurs dans le fichier <url id="&url-readme-non-us;">.
385 Certains pays limitent l'usage des logiciels de cryptographie. Cela ne
386 devrait cependant pas avoir d'impact sur l'activité d'un responsable de paquet
387 car il peut être tout à fait légal d'utiliser des logiciels de cryptographie
388 pour l'authentification plutôt que pour le cryptage (comme c'est le cas en
389 France). Le projet Debian ne nécessite en aucune manière de cryptographie en
390 tant que cryptage. Si vous vivez dans un pays où l'usage de la cryptographie
391 pour authentification est interdit, contactez-nous pour que nous prenions des
392 dispositions particulières.
395 Une fois que votre dossier est prêt et que votre clé publique est accessible sur
396 les serveurs de clés publiques, envoyez votre candidature sur la liste
397 &email-new-maintainer; pour être enregistré comme responsable Debian et
398 pouvoir ajouter vos paquets dans l'archive. Ce message doit contenir votre nom
399 et votre adresse électronique. Toutes les informations présentées plus tôt
400 seront requises une fois que votre responsable de canditature aura été
401 désigné. Le responsable de candidature<footnote>Application manager</footnote> est votre accompagnateur dans le
402 processus d'enregistrement et vous pouvez toujours lui demander où en est
403 votre candidature. Vous pouvez aussi consulter le <url id="&url-newmaint-db;"
404 name="tableau de bord des candidatures"> sur le site Debian.
407 Pour en savoir plus, consultez le <url id="&url-newmaint;" name="coin des
408 nouveaux responsables"> sur le site Debian.
411 Une fois que votre dossier aura été reçu et traité, vous devriez
412 recevoir les informations concernant votre compte Debian. Si vous
413 ne recevez rien pendant un mois, envoyez un message de relance demandant si
414 votre candidature initiale a bien été reçue. Ne renvoyez <em>pas</em> votre
415 candidature initiale, cela embrouillerait l'équipe <em>New maintainer</em>.
416 Soyez patient, en particulier à l'approche de la sortie d'une
417 distribution ; des erreurs ont parfois lieu et les gens peuvent manquer
418 de temps pour cette activité bénévole.
421 <sect id="mentors">Mentors Debian
423 La liste de diffusion &email-debian-mentors; a été créée pour les
424 responsables débutants qui cherchent de l'aide pour leur première
425 création de paquet ainsi que pour des problèmes spécifiques aux
426 développeurs. Tout responsable débutant est invité à s'y inscrire
427 (voir <ref id="mailing-lists"> pour plus de détails).
430 Ceux qui préfèrent une aide personnalisée (via une correspondance
431 privée) doivent aussi poster dans cette liste, un développeur
432 expérimenté se portera volontaire pour les aider.
439 <chapt id="developer-duties">Les charges du responsable Debian
442 <sect>Mise à jour de vos références Debian
445 Une base de données LDAP contient de nombreuses informations concernant
446 les développeurs, vous pouvez y accéder à l'adresse <url
447 id="&url-debian-db;">. Vous pouvez modifier votre mot de passe (ce mot de
448 passe est diffusé sur la plupart des machines auxquelles vous avez accès),
449 votre adresse, votre pays, la latitude et la longitude de l'endroit où vous
450 résidez, vos numéros de téléphone et de fax, votre interpréteur de commande
451 préféré, votre surnom IRC, votre page web, votre adresse de courrier
452 électronique ainsi que l'alias que vous utilisez pour votre courrier
453 électronique chez debian.org. La plupart de ces informations ne sont pas
454 accessibles au public. Pour plus de détails au sujet de cette base de données
455 reportez-vous à sa documentation en ligne disponible à l'adresse <url
456 id="&url-debian-db-doc;">.
459 Vous y tiendrez à jour les informations vous concernant.
464 <sect id="key-maint">Gérer votre clé publique
467 Soyez très vigilant en utilisant votre clé privée. Ne la placez pas sur un
468 serveur public ou sur des machines multi-utilisateurs telles que
469 <tt>master.debian.org</tt>. Sauvegardez vos clés et gardez-en une copie hors
470 connexion. Lisez la documentation fournie avec votre logiciel et la <url
471 id="&url-pgp-faq;" name="FAQ PGP">.
474 Si vous ajoutez des signatures ou des identifiants à votre clé publique, vous
475 pouvez mettre à jour le porte-clés Debian en envoyant votre clé publique à
476 <tt>&keyserver-host;</tt>. Si vous voulez ajouter ou supprimer une clé, envoyez
477 un courrier à &email-debian-keyring;. Les procédures d'extraction de clé
478 décrites dans <ref id="registering"> s'appliquent ici.
481 Vous pouvez trouver une présentation approfondie de la gestion de clé Debian
482 dans la documentation du paquet <package>debian-keyring</package>.
487 <sect id="inform-vacation">Prendre des vacances courtoisement
490 La plupart des développeurs prennent des vacances ; généralement, cela signifie
491 qu'ils ne peuvent ni travailler pour Debian ni être joints par
492 courrier électronique si un problème se présentait. Les autres développeurs
493 ont besoin de savoir que vous êtes en vacances ; ainsi ils sauront comment
494 réagir en cas de problème. En général, cela signifie que les autres
495 développeurs sont autorisés à modifier votre paquet (voir <ref id="nmu">) en
496 cas de gros problème (bogues bloquants pour la distribution, mise à jour de
497 sécurité...) durant vos vacances.
500 Il y a deux choses à faire pour informer les autres développeurs.
501 Premièrement, envoyer un courrier électronique indiquant vos dates de vacances
502 à &email-debian-private;, vous pouvez aussi donner quelques instructions pour
503 indiquer comment agir si un problème survenait. Deuxièmement, il faut mettre
504 à jour la base de données Debian LDAP et vous signaler « en
505 vacances » (l'accès à cette information est réservé aux développeurs).
506 N'oubliez pas de retirer votre indicateur « en vacances » lorsque
507 celles-ci sont terminées.
512 <sect id="upstream-coordination">Coordination avec les développeurs
516 Une grosse part de votre travail de responsable Debian sera de rester en
517 contact avec les développeurs amonts. Parfois, les utilisateurs établissent
518 des rapports de bogue qui ne sont pas spécifiques à Debian. Vous devez
519 transmettre ces rapports de bogue aux développeurs amonts pour qu'ils soient
520 corrigés dans les prochaines versions. Il n'est pas de votre responsabilité
521 de corriger les bogues qui ne sont pas spécifiques à Debian. Toutefois,
522 si vous êtes capable de le faire, nous vous encourageons à contribuer au
523 développements amonts en proposant un <em>patch</em> qui corrige ce bogue.
524 Les utilisateurs et responsables Debian proposent souvent des <em>patches</em>
525 pour corriger des bogues amonts, il vous faudra alors évaluer ce
526 <em>patch</em> puis le transmettre aux développeurs amonts.
529 Si vous avez besoin de modifier les sources d'un logiciel pour fabriquer un
530 paquet conforme à la charte Debian, alors vous devriez proposer un
531 <em>patch</em> aux developpeurs amonts pour qu'il soit inclus dans leur
532 version. Ainsi, vous n'aurez plus besoin de modifier les sources lors des
533 mises à jour amonts suivantes. Quels que soient les changements dont vous
534 avez besoin, il faut toujours essayer de rester dans la lignée des sources
541 <sect id="rc-bug">Gestion des bogues bloquants pour la distribution
544 Les bogues bloquants pour la distribution<footnote>Traduction de l'anglais
545 <em>Release critical bug (RCB)</em></footnote> sont les bogues de sévérité
546 <em>critique</em>, <em>grave</em> et <em>sérieuse</em><footnote>Respectivement
547 <em>critical</em>, <em>grave</em> et <em>serious</em> en anglais</footnote>.
548 Ces bogues peuvent retarder la diffusion d'une distribution Debian et/ou
549 peuvent justifier la suppression d'un paquet d'une distribution gelée. C'est
550 pourquoi ces bogues ont besoin d'être corrigés au plus vite. Vous devez être
551 conscient que certains développeurs faisant partie de l'équipe d'<url
552 id="&url-debian-qa;" name ="assurance qualité Debian"> surveillent ces bogues
553 et essaient de vous aider chaque fois qu'ils le peuvent. Si vous ne pouvez pas
554 corriger un bogue de ce type dans les deux semaines, vous devriez soit
555 demander de l'aide en envoyant un courrier à l'équipe d'assurance qualité
556 (<em>QA group</em> &email-debian-qa;), soit expliquer vos difficultés et
557 présenter un plan pour corriger le problème en répondant au rapport de bogue
558 concerné. Si rien n'est fait, des personnes de l'équipe d'assurance qualité
559 pourraient chercher à corriger votre paquet (voir <ref id="nmu">) après avoir
560 tenté de vous contacter. Ils pourraient attendre moins longtemps que
561 d'habitude pour faire leur mise à jour s'il n'y a pas trace d'activité récente
562 de votre part dans le système de suivi des bogues.
566 <sect id="qa-effort">L'effort d'assurance qualité
569 Même s'il y a un groupe de personnes dédié à l'assurance qualité, cette
570 activité ne leur est pas réservée. Vous pouvez participer à cet effort en
571 éliminant, autant que faire se peut, tout bogue de vos paquets et en observant
572 les remarques émises par <prgn>lintian</prgn> (voir <ref id="lintian-reports">). Si cela
573 ne vous semble pas possible, il faudrait songer à abandonner certains
574 de vos paquets (voir <ref id="orphaning">). Vous pouvez aussi
575 demander l'aide d'autres personnes pour rattraper votre retard dans la liste
576 des bogues (vous pouvez demander de l'aide sur les listes &email-debian-qa;
577 et &email-debian-devel;).
580 <sect>Démissionner courtoisement
582 Si vous choisissez de quitter le projet Debian, procédez comme suit :
586 Abandonnez tous vos paquets comme décrit dans <ref id="orphaning">.
589 Envoyez un courrier électronique à &email-debian-private; indiquant
590 comment vous quittez le projet.
593 Signalez aux responsables du porte-clés Debian que vous quittez le
594 projet en écrivant à &email-debian-keyring;.
602 <chapt id="servers">Listes de diffusion, serveurs et autres machines
605 Dans ce chapitre vous trouverez une très brève description des listes de
606 diffusion Debian, des principaux serveurs Debian et des autres machines
607 auxquelles vous aurez accès en tant que développeur.
611 <sect id="mailing-lists">Les listes de diffusion
614 Le serveur de liste de diffusion est <tt>&lists-host;</tt>. Envoyez un
615 courrier électronique à <tt>debian-<var>foo</var>-REQUEST@&lists-host;</tt>,
616 où <tt>debian-<var>foo</var></tt> est le nom de la liste, avec le mot
617 <tt>subscribe</tt> dans le champ <em>Objet</em><footnote><em>Subject</em> en
618 anglais</footnote> pour vous abonner à la liste ou <tt>unsubscribe</tt> pour
619 vous désabonner. Vous trouverez des instructions plus détaillées pour vous
620 abonner et vous désabonner aux adresses <url
621 id="&url-debian-lists-subscribe;">, <url id="&url-debian-lists;"> ou
622 localement dans le fichier &file-mail-lists; si vous avez installé le paquet
623 <package>doc-debian</package>.
626 Lorsque vous répondez aux messages d'une liste de diffusion,
627 n'envoyez pas de copie (<tt>CC</tt>) à l'auteur du courrier à moins
628 qu'il ne l'ait demandé explicitement. Quelqu'un qui envoie un message à une
629 liste de diffusion se doit d'y lire les réponses.
632 Les principales listes de diffusion Debian sont :
634 <item> &email-debian-devel;,
635 <item> &email-debian-policy;,
636 <item> &email-debian-user;,
637 <item> &email-debian-private;,
638 <item> &email-debian-announce; et
639 <item> &email-debian-devel-announce;.
642 Un développeur devrait, au minimum, être inscrit aux listes
643 &email-debian-private; et &email-debian-devel-announce;.
646 Il existe d'autres listes de diffusion spécialisées dans différents thèmes.
647 Reportez-vous à la page <url id="&url-debian-lists-subscribe;"> pour en
648 obtenir la liste complète. Nous déconseillons l'usage des correspondances
649 croisées (envoyer le même message à plusieurs listes).
652 &email-debian-private; est une liste de diffusion destinée aux discussions
653 privées entre développeurs Debian. Elle doit être utilisée pour tout message
654 qui ne doit pas être publié, quelqu'en soit la raison. C'est une liste à
655 faible trafic et les utilisateurs sont priés de ne l'utiliser qu'en cas de
656 réelle nécessité. De plus, il ne faut <em>jamais</em> faire suivre un courrier
657 de cette liste à qui que ce soit.
660 &email-debian-email; est une liste de diffusion fourre-tout. Elle est utilisée
661 pour les correspondances relatives à Debian qu'il serait utile d'archiver, telles
662 que des échanges avec les auteurs amonts à propos de licences, de bogues ou encore
663 des discussions sur le projet avec d'autres personnes.
666 Comme toujours sur internet, éliminez les lignes inutiles quand vous citez
667 le message auquel vous répondez. Plus généralement, respectez
668 les conventions habituelles lorsque vous envoyez des messages.
671 Les archives des listes de diffusion sont disponibles en ligne à l'adresse
672 <url id="&url-lists-archives;">.
677 <sect id="server-machines">Les serveurs Debian
680 Les serveurs Debian sont bien connus et hébergent les fonctions
681 critiques du projet Debian. Tout développeur se doit de savoir ce qu'ils sont
682 et à quoi ils servent.
685 Si vous avez un problème en utilisant un serveur Debian et si vous estimez que
686 les administrateurs système devraient en être avertis, vous trouverez
687 l'adresse d'un responsable pour cette machine à la page <url
688 id="&url-devel-machines;">. Si votre problème n'est pas lié au système
689 (paquet à supprimer ou suggestion pour le site web par exemple), il vous
690 faudra en général ouvrir un rapport de bogue sur un
691 « pseudo-paquet ». Reportez-vous à la section <ref id="submit-bug">
692 pour connaître la procédure à suivre.
697 <sect1 id="servers-master">Le serveur maître
700 <tt>master.debian.org</tt> est le serveur maître du système de suivi des
701 bogues (BTS<footnote>Système de suivi des bogues se dit <em>Bug Tracking
702 System</em> en anglais</footnote>). Si vous envisagez de manipuler les
703 rapports de bogue ou d'en faire une analyse statistique ce sera le bon endroit
704 pour le faire. Informez la liste &email-debian-devel; de votre intention
705 avant d'implémenter quoi que ce soit afin d'éviter un travail en double
706 ou le gaspillage de temps machine.
709 Tous les développeurs Debian ont un compte sur <tt>master.debian.org</tt>.
710 Prenez grand soin de votre mot de passe. Évitez les méthodes de connexion et
711 de téléchargement qui envoient votre mot de passe en clair sur internet.
714 Si vous rencontrez un problème avec <tt>master.debian.org</tt> tel qu'un
715 disque plein, une activité suspecte ou autre, envoyez un courrier
716 électronique à &email-debian-admin;.
721 <sect1 id="servers-ftp-master">Le serveur ftp-master
724 Le serveur ftp-master (<tt>ftp-master.debian.org</tt> ou <tt>
725 auric.debian.org</tt>) est le serveur maître de l'archive Debian
726 (exception faite des paquets non-US). En général, les mises à jour de
727 paquets se font sur ce serveur. Reportez-vous à la section <ref id="upload">
731 Les problèmes avec l'archive Debian FTP doivent généralement être rapportés
732 comme bogue contre le pseudo-paquet <package>ftp.debian.org</package> ou par
733 courrier électronique à &email-ftpmaster; ; reportez-vous à la section <ref
734 id="archive-manip"> pour connaître la procédure à suivre.
739 <sect1 id="servers-www">Le serveur WWW
742 Le serveur web principal, <tt>www.debian.org</tt>, est aussi connu sous le nom
743 <tt>klecker.debian.org</tt>. Tous les développeurs ont un compte sur cette
747 Si vous désirez publier quelques informations spécifiques à Debian sur la
749 vous pouvez le faire en les déposant dans le sous-répertoire
750 <file>public_html</file> de votre répertoire personnel sur
751 <tt>klecker.debian.org</tt>. Toute information déposée à cet endroit est
752 accessible à l'adresse <tt>http://people.debian.org/~<var>user-id</var>/</tt>.
753 Vous devriez préférer ce serveur aux autres car les répertoires
754 <file>public_html</file> du serveur <tt>klecker.debian.org</tt> sont
755 sauvegardés. Ce n'est pas le cas sur les autres serveurs. N'utilisez pas ces
756 serveurs pour publier des informations sans rapport avec le projet Debian
757 avant d'en avoir obtenu la permission. Pour toute question supplémentaire,
758 adressez-vous à la liste &email-debian-devel;.
761 Si vous rencontrez un problème avec un serveur web Debian, vous devez
762 généralement envoyer un rapport de bogue contre le pseudo-paquet
763 <package>www.debian.org</package>. Vérifiez d'abord sur le <url
764 id="http://bugs.debian.org/www.debian.org" name="système de suivi des bogues">
765 que personne ne l'a déjà rapporté avant vous.
770 <sect1 id="servers-cvs">Le serveur CVS
773 Le serveur <tt>cvs.debian.org</tt> est aussi connu sous le nom
774 <tt>klecker.debian.org</tt> (déjà présenté plus haut). Si vous avez besoin
775 d'un serveur CVS accessible par tous pour, par exemple, coordonner le travail
776 de plusieurs développeurs sur un paquet, vous pouvez demander un espace sur ce
780 Le serveur <tt>cvs.debian.org</tt> autorise les accès CVS locaux, les accès en
781 lecture seule pour les connexions client-serveur anonymes et les accès
782 client-serveur complets pour les connexions <prgn>ssh</prgn>. L'espace CVS peut
783 aussi être consulté par la toile à l'adresse <url id="&url-cvsweb;">.
786 Pour obtenir un espace CVS, envoyez une demande à l'adresse
787 &email-debian-admin; en précisant le nom de l'espace, le propriétaire du
788 répertoire racine et pourquoi vous en avez besoin.
793 <sect1 id="servers-mirrors">Les miroirs des serveurs Debian
796 Les serveurs web et FTP Debian sont dupliqués sur d'autres serveurs. Évitez de
797 charger les serveurs originaux. Idéalement, les serveurs originaux se
798 contentent de copier leur contenu sur les miroirs de premier niveau et
799 tous les utilisateurs consultent les miroirs. Ainsi le projet Debian étale
800 ces besoins en bande passante sur plusieurs serveurs et plusieurs réseaux.
801 Notez que la duplication des données sur les miroirs est déclenchée par le
802 serveur maître. Ceci nous garantit que les miroirs sont aussi à jour que
806 La liste des miroirs FTP (et en général HTTP) se trouve à l'adresse <url
807 id="&url-debian-mirrors;">. Vous trouverez plus d'information sur les miroirs
808 Debian à l'adresse <url id="&url-debian-mirroring;">. Cette page contient des
809 informations et des outils qui pourront vous aider si vous avez l'intention de
810 mettre en place votre propre miroir, que ce soit pour un usage interne ou
811 pour un accès public.
814 Les miroirs sont en général mis en oeuvre par des tiers qui veulent aider
815 Debian. C'est pourquoi les développeurs n'ont en général pas de compte sur ces
821 <sect id="other-machines">Les autres machines Debian
824 Vous aurez peut-être accès à d'autres machines Debian. Vous pouvez utiliser
825 ces machines pour des tâches en rapport avec le projet Debian. Soyez gentils
826 avec les administrateurs et ne consommez pas des montagnes d'espace disque, de
827 bande passante ou de temps machine sans en avoir d'abord reçu l'autorisation.
828 En général, ces machines sont gérés par des volontaires et sont utilisées pour
829 des activités de portage.
832 Vous trouverez une liste des autres machines mises à la disposition des
833 développeurs Debian à l'adresse <url id="&url-devel-machines;">.
839 <chapt id="archive">L'archive Debian
844 La distribution Debian est composée d'un grand nombre de paquets Debian
845 (fichiers <tt>.deb</tt> : à peu près &number-of-pkgs;) et de quelques
846 autres fichiers (documentation, images des disquettes d'installation,
850 Voici un exemple d'arborescence pour une archive Debian complète :
853 &sample-dist-dirtree;
856 Comme vous pouvez le voir, le répertoire racine contient deux répertoires,
857 <tt>dists/</tt> et <tt>pool/</tt>. Le second est un ensemble de répertoires où
858 sont stockés les paquets. Ceux-ci sont manipulés grâce à la base de données de
859 l'archive et aux logiciels qui l'accompagnent. Le premier répertoire contient
860 les distributions <em>stable</em>, <em>testing</em> et <em>unstable</em>. Le
861 découpage en sous-répertoires est identique d'un répertoire de distribution à
862 l'autre ; nous nous contenterons donc d'exposer ce découpage pour la
863 distribution <em>stable</em>. Les fichiers <tt>Packages</tt> et
864 <tt>Sources</tt> qui se trouvent dans les répertoires de distribution peuvent
865 faire référence à des fichiers du répertoire <tt>pool/</tt>.
869 Le répertoire <tt>dists/stable</tt> contient trois répertoires nommés
870 <tt>main</tt>, <tt>contrib</tt> et <tt>non-free</tt>.
873 Dans chacune de ces sections se trouve un répertoire contenant les paquets
874 sources (<tt>source/</tt>), un répertoire pour chaque architecture supportée
875 (<tt>binary-i386/</tt>, <tt>binary-m68k/</tt>, etc) et un répertoire pour les
876 paquets indépendants de l'architecture (<tt>binary-all/</tt>).
879 La section <em>main</em> contient d'autres répertoires destinés aux images de
880 disquettes et à quelques documentations essentielles pour installer la
881 distribution Debian sur une architecture particulière (<tt>disk-i386/</tt>,
882 <tt>disk-m68k/</tt>, etc).
885 Les répertoires <tt>binary-*/</tt> et <tt>source/</tt> sont à nouveau
886 divisés en <em>sous-sections</em>.
893 La section <em>main</em> constitue la <strong>distribution Debian GNU-Linux
894 officielle</strong>. Elle est officielle parce qu'elle est conforme à toutes
895 nos recommandations. Les deux autres sections divergent de ces recommandations
896 à différents degrés, elles ne font donc pas officiellement partie de Debian.
899 Chaque paquet de la section <em>main</em> doit être conforme aux <url
900 id="&url-dfsg;" name="Debian Free Software Guidelines"> et à toutes les autres
901 recommandations décrites dans <url id="&url-debian-policy;" name="le Debian
902 Policy Manual">. Les DFSG<footnote><em>Debian Free Software
903 Guidelines</em></footnote> constituent notre définition de <em>logiciel
904 libre</em>. Reportez-vous au <em>Debian Policy Manual</em> pour en savoir
908 Les paquets de la section <em>contrib</em> doivent être conformes aux DFSG
909 mais ne respectent pas d'autres contraintes. Ils peuvent par exemple dépendre
910 de paquets de la section <em>non-free</em>.
913 Les paquets qui ne sont pas conformes aux DFSG sont rangés dans la section
914 <em>non-free</em>. Bien que nous supportions l'usage de ces paquets et qu'ils
915 bénéficient de nos infrastructures (système de suivi des bogues, listes de
916 diffusion, etc), ces paquets <em>non-free</em> ne font pas partie de la
920 Le <em>Debian Policy Manual</em> donne des définitions plus précises pour ces trois sections.
921 Les paragraphes précédants ne constituent qu'une introduction.
924 La séparation de l'archive en trois sections est
925 importante pour toute personne qui désire distribuer Debian, que ce soit par
926 serveur FTP ou sur cédérom. Il suffit de distribuer les sections <em>main</em>
927 et <em>contrib</em> pour éviter tout problème légal. Certains paquets de la
928 section <em>non-free</em> interdisent leur distribution à titre commercial par
932 D'un autre coté, un distributeur de cédérom pourra facilement vérifier
933 individuellement les licences des paquets de la section <em>non-free</em> et
934 ajouter autant de paquets qu'il est autorisé à le faire sur ses cédéroms (dans
935 la mesure où cela varie énormément d'un distributeur à l'autre ce travail ne
936 peut être fait par les développeurs Debian).
940 <sect>Les architectures
943 À ses débuts, le noyau Linux existait uniquement pour les architectures Intel
944 x86 ; il en était de même pour Debian. Linux devenant de plus
945 en plus populaire, il a été porté vers d'autres architectures. <p> Le noyau
946 2.0 existe pour les architectures Intel x86, DEC Alpha, SPARC, Motorola, 680x0
947 (Atari, Amiga, et Macintosh), MIPS et PowerPC. Le noyau 2.2 supporte encore
948 plus d'architectures dont ARM et UltraSPARC. Puisque Linux supporte ces
949 architectures, Debian a décidé qu'il devait les supporter aussi. C'est
950 pourquoi plusieurs portages sont en cours ; en fait il y a aussi des portages
951 vers d'autres noyaux. À coté d'<em>i386</em> (notre nom pour Intel x86), nous
952 avons, au moment où j'écris <em>m68k</em>, <em>alpha</em>, <em>powerpc</em>,
953 <em>sparc</em>, <em>hurd-i386</em>, et <em>arm</em>.
956 Debian GNU-Linux 1.3 est disponible uniquement pour <em>i386</em>. Debian 2.0
957 supporte les architectures <em>i386</em> et <em>m68k</em>. Debian 2.1
958 supporte les architectures <em>i386</em>, <em>m68k</em>, <em>alpha</em> et
959 <em>sparc</em>. Debian 2.2 ajoute le support de l'architecture
963 Vous trouverez des informations destinées aux développeurs à propos d'un
964 portage particulier sur la page <url id="&url-debian-ports;" name="Portage
970 <sect>Les sous-sections
973 Les sections <em>main</em>, <em>contrib</em> et <em>non-free</em> sont
974 divisées en sous-sections pour simplifier le processus d'installation et la
975 maintenance de l'archive Debian. Ces sous-sections ne sont pas définies
976 formellement, à l'exception peut-être de la sous-section <em>base</em>.
977 Elles existent pour simplifier l'organisation des paquets et la navigation
978 dans la liste des paquets disponibles. Reportez-vous à la distribution
979 courante pour connaître la liste des sous-sections disponibles.
982 Notez qu'avec l'introduction de la nouvelle organisation de l'archive (voir le
983 répertoire racine <em>pool/</em>), les sous-sections matérialisées par des
984 répertoires pourraient disparaître à l'avenir. Elles seront cependant
985 conservées dans le champ <tt>Section</tt> de l'en-tête des paquets.
993 Il existe deux types de paquets Debian : les paquets sources et les
997 Les paquets sources sont constitués de deux ou trois fichiers :
1001 un fichier <tt>.dsc</tt> et un fichier <tt>.tar.gz</tt> ou,
1004 un fichier <tt>.dsc</tt>, un fichier <tt>.orig.tar.gz</tt> et un
1005 fichier <tt>.diff.gz</tt>.
1010 Si un paquet est développé spécifiquement pour le projet Debian et n'est pas
1011 distribué en dehors de Debian, il n'y a qu'un fichier <tt>.tar.gz</tt> qui
1012 contient les sources du programme. Si un paquet est distribué ailleurs, le
1013 fichier <tt>.orig.tar.gz</tt> contient ce que l'on appelle <em>code source
1014 amont</em>, c'est-à-dire le code source distribué par le <em>mainteneur
1015 amont</em> (il s'agit souvent de l'auteur du logiciel). Dans ce cas, le
1016 fichier <tt>.diff.gz</tt> contient les modifications faites par le responsable
1020 Le fichier <tt>.dsc</tt> liste tous les fichiers sources avec leurs sommes de
1021 contrôle (<prgn>md5sums</prgn>) et quelques informations supplémentaires
1022 concernant le paquet (responsable, version, etc).
1027 <sect>Les répertoires des distributions
1030 L'organisation des répertoires présentée précédemment est elle-même englobée
1031 par les <em>répertoires des distributions</em>. Chaque distribution est
1032 incluse dans le répertoire <tt>pool</tt> à la racine de l'archive Debian.
1035 En résumant, une archive Debian a un répertoire racine sur un serveur FTP. Par
1036 exemple, sur le site miroir <ftpsite>ftp.us.debian.org</ftpsite>, l'archive
1037 Debian se trouve dans <ftppath>/debian</ftppath> ce qui est un emplacement
1038 courant. Un autre emplacement courant est <tt>/pub/debian</tt>.
1041 Une distribution est composée de paquets Debian sources et binaires et des
1042 fichiers <tt>Sources</tt> et <tt>Packages</tt> correspondants. Ces derniers
1043 contiennent la description de tous les paquets. Les premiers sont
1044 conservés dans le répertoire <tt>pool/</tt> tandis que les seconds sont
1045 conservés dans le répertoire <tt>dists/</tt> de l'archive (pour des questions
1046 de compatibilité descendante)
1051 <sect1 id="life-cycle"><em>Stable</em>, <em>testing</em>,
1052 <em>unstable</em> et parfois <em>frozen</em>
1055 Il y a toujours une distribution appelée <em>stable</em> (dans le répertoire
1056 <tt>dists/stable</tt>), une distribution appelée <em>testing</em> (dans le
1057 répertoire <tt>dists/testing</tt>) et une distribution appelée
1058 <em>unstable</em> (dans le répertoire <tt>dists/unstable</tt>). Ceci reflète
1059 le processus de développement du projet Debian.
1062 Les développements se font sur la distribution <em>unstable</em><footnote>
1063 <em>unstable</em> signifie « instable »</footnote> (c'est pourquoi
1064 elle est aussi appelée <em>distribution de développement</em>). Chaque
1065 développeur Debian peut modifier ses paquets à tout moment dans cette
1066 distribution. Ainsi son contenu change tous les jours. Comme aucun effort
1067 particulier n'est fait pour s'assurer que tout fonctionne correctement dans
1068 cette distribution, elle est parfois <em>instable</em>.
1071 Les paquets sont copiés de <em>unstable</em> vers <em>testing</em> s'ils
1072 satisfont certains critères. Pour entrer dans la distribution <em>testing</em>
1073 un paquet doit faire partie de l'archive depuis deux semaines et ne doit pas
1074 avoir de bogue bloquant pour la distribution<footnote><em>Release critical
1075 bug</em></footnote>. Passée cette période, le paquet sera installé dans
1076 <em>testing</em> dès que les paquets dont il dépend y seront. Ce processus est
1080 Après une période de développement, quand le responsable de
1081 distribution<footnote><em>Release manager</em></footnote> le juge opportun, la
1082 distribution <em>testing</em> est renommée <em>frozen</em>. Une fois que cela
1083 est fait, aucun changement n'est autorisé sur cette distribution en dehors des
1084 corrections de bogues ; c'est pourquoi nous l'appelons <em>frozen<footnote>
1085 <em>frozen</em> signifie « gelée »</footnote></em>. Après un mois
1086 ou un peu plus selon l'avancement, la distribution entre dans une phase de
1087 « gel complet » où les seules modifications acceptées concernent la
1088 procédure d'installation. Cette phase s'appelle un « cycle de test »
1089 et cela peut durer jusqu'à deux semaines. Il peut y avoir plusieurs cycles de
1090 tests avant que le responsable de distribution ne la déclare prête pour la
1091 diffusion. À la fin du dernier cycle de test, la distribution <em>frozen</em>
1092 est renommée <em>stable</em>, remplaçant l'ancienne distribution <em>stable</em> qui
1093 est enlevée à cette occasion.
1096 Ce cycle de développement est basé sur l'idée que la distribution
1097 <em>instable</em> devient <em>stable</em> après une période de test en tant
1098 que distribution <em>gelée</em>. Une distribution contient inévitablement des
1099 bogues, même si elle est classée stable. C'est pourquoi les distributions
1100 stables sont mises à jour de temps en temps. Les corrections introduites sont
1101 testées avec une grande attention et ajoutées individuellement à l'archive
1102 pour diminuer les risques d'introduire de nouveaux bogues. Vous pouvez trouver
1103 des paquets proposés pour les mises à jour de <em>stable</em> dans le
1104 répertoire <tt>proposed-updates</tt>. De temps en temps, les paquets de ce
1105 répertoire qui ne présentent pas de problème sont installés dans la
1106 distribution <em>stable</em> et le numéro de révision de cette distribution
1107 est incrémenté (« 1.3 » devient « 1.3r1 »,
1108 « 2.0r2 » devient « 2.0r3 » et ainsi de suite).
1111 Notez que pendant la période de gel les développements continuent sur la
1112 distribution instable car cette distribution reste en place quand
1113 <em>testing</em> devient <em>frozen</em>. Quand la distribution
1114 <em>frozen</em> devient officiellement <em>stable</em>, l'ancienne distribution
1115 stable est entièrement supprimée de l'archive Debian (elle reste cependant
1116 disponible à l'adresse <tt>&archive-host;</tt>).
1119 En résumé, les distributions <em>stable</em>, <em>testing</em> et
1120 <em>unstable</em> sont disponibles en permanence et de temps en temps, une
1121 distribution <em>frozen</em> apparaît pour quelques mois.
1130 <em>NOTE : <em>experimental</em> ne fonctionne plus depuis la mise en place du
1131 <em>package pool</em>. Si la distribution <em>experimental</em> est remise en service
1132 un jour, la présente section aura sûrement besoin d'une mise à jour.</em>
1135 La distribution <em>experimental</em> est une distribution particulière. Ce
1136 n'est pas une distribution à part entière comme le sont <em>stable</em> et
1137 <em>unstable</em>. Elle est prévue pour servir de plate-forme de développement
1138 pour les projets expérimentaux qui ont de grandes chances de détruire le
1139 système. Les utilisateurs qui téléchargent et installent des paquets depuis
1140 <em>experimental</em> sont prévenus : on ne peut pas faire confiance à la
1141 distribution <em>experimental</em>.
1144 Les responsables doivent être très sélectifs quant à l'utilisation de la
1145 distribution <em>experimental</em>. Même très instable, un paquet peut aller
1146 dans <em>unstable</em> ; ajoutez juste quelques avertissements dans la
1147 description. Par contre, s'il y a une chance que le logiciel endommage
1148 sérieusement le système, il est préférable de le mettre dans
1149 <em>experimental</em>.
1152 Un système de fichier compressé, par exemple, devrait probablement aller dans
1153 <em>experimental</em>. Une nouvelle version non finalisée d'un logiciel qui
1154 utilise une méthode de configuration complètement différente pourrait aller
1155 dans <em>experimental</em> à la discrétion du responsable. Un nouveau logiciel
1156 qui a peu de chance d'endommager le système ira dans <em>unstable</em>. Si
1157 vous travaillez sur un cas de mise à jour complexe ou incompatible vous pouvez
1158 aussi utiliser <em>experimental</em> comme plate-forme d'intégration et ainsi
1159 fournir un accès aux testeurs.
1162 Par contre, utiliser <em>experimental</em> comme plate-forme n'est pas
1163 toujours la meilleure idée, surtout pour les paquets éphémères.
1164 Vous ne pouvez pas effacer un paquet qui a été installé dans cet espace
1165 vous même ; cela doit être fait par l'équipe d'administration de l'archive.
1166 Une solution consiste à utiliser vos pages web personnelles sur le serveur
1167 <tt>klecker.debian.org</tt> (c.-à-d. <tt>people.debian.org</tt>).
1171 <sect id="codenames">Les noms de distribution
1174 Chaque distribution Debian diffusée a un nom : Debian 1.1 s'appelle
1175 « buz » ; Debian 1.2, « rex » ; Debian 1.3 « bo » ;
1176 Debian 2.0, « hamm » ; Debian 2.1, « slink »; Debian 2.2
1177 « potato » et Debian 3.0 « woody ». Il y a aussi une pseudo-distribution nommée
1178 « sid », il s'agit de la distribution <em>unstable</em> ; comme les
1179 paquets vont de <em>unstable</em> à <em>testing</em> quand ils approchent de
1180 la stabilité, la distribution « sid » n'est jamais diffusée. En plus
1181 du contenu habituel d'une distribution Debian, « sid » contient des
1182 paquets pour des architectures qui ne sont pas encore officiellement
1183 supportées ou pour lesquelles la distribution n'a pas encore été diffusée. Ces
1184 architectures doivent rejoindre les architectures supportées à une date
1188 Comme Debian est un projet de développement ouvert (i.e. tout le monde peut
1189 participer et suivre les développements) même les distributions
1190 <em>unstable</em> et <em>testing</em> sont disponibles sur les serveurs HTTP
1194 Si nous avions nommé le répertoire qui contient la prochaine version àc
1195 diffuser « testing », il aurait fallu le renommer
1196 « stable » au moment de la diffusion, ce qui aurait forcé les
1197 miroirs FTP à re-télécharger la distribution complète (qui est plutôt
1201 D'un autre coté, si une distribution s'appelle <em>Debian-x.y</em> dès le
1202 départ, des personnes pourraient s'imaginer que la distribution Debian
1203 <em>x.y</em> est disponible. (Cela s'est produit par le passé, un distributeur
1204 avait gravé des cédéroms Debian 1.0 en utilisant une version de développement
1205 pré-1.0. C'est pour cette raison que la première version officielle était la
1206 version 1.1 et non la 1.0.)
1209 En conséquence, les noms de répertoire des distributions dans l'archive sont
1210 déterminés par leurs noms de code et non par leur statut (exemple : slink). Ces
1211 noms sont identiques pendant la période de développement et une fois la
1212 distribution diffusée ; des liens symboliques, qui peuvent être modifiés
1213 facilement, indiquent la distribution stable actuelle.
1216 Tout ceci explique pourquoi les répertoires des distributions sont nommés à
1217 partir des noms de code des distributions alors que <em>stable</em>,
1218 <em>testing</em>, <em>unstable</em> et <em>frozen</em> sont des liens
1219 symboliques qui pointent vers les répertoires appropriés.
1225 <chapt id="upload">La mise à jour d'un paquet
1228 <sect>Annoncer un nouveau paquet
1231 Si vous voulez créer un nouveau paquet pour la distribution Debian vous
1232 devriez commencer par consulter la liste des <url id="&url-wnpp;"
1233 name="paquets en souffrance et paquets souhaités">. Vous pourrez ainsi
1234 vérifier que personne ne travaille déjà sur ce paquet et éviter un double
1235 travail. Consultez aussi cette page si vous voulez en savoir plus.
1238 Supposons que personne ne travaille sur le paquet que vous visez, vous devez
1239 alors envoyer un rapport de bogue (voir <ref id="submit-bug">) concernant le
1240 pseudo-paquet <tt>wnpp</tt>. Ce
1241 courrier devra décrire le paquet que vous projetez de créer, la licence de ce
1242 paquet et l'URL à laquelle le source peut être téléchargé. Cette liste n'est
1246 Le sujet de votre rapport de bogue devra être <ITP<footnote><em>Intent To
1247 Package</em> : intention de mise en paquet</footnote> :
1248 <var>NomDuPaquet</var> — <var> courte description </var>>, en remplaçant
1249 <var>NomDuPaquet</var> par le nom du paquet. La sévérité du bogue sera
1250 <em>whishlist</em>. Si vous le jugez nécessaire, envoyez une copie à
1251 &email-debian-devel; en mettant cette adresse dans le champs X-Debbugs-CC: de
1252 l'entête du message. N'utilisez pas le champs CC: car de cette manière le
1253 sujet du message ne contiendrait pas le numéro du bogue.
1256 Il faudra aussi ajouter une entrée
1257 <tt>Closes: bug#<var>nnnnn</var></tt> dans le fichier <file>changelog</file>
1258 du nouveau paquet. Cette indication fermera automatiquement le rapport de
1259 bogue à l'installation du nouveau paquet sur les serveurs d'archivage (voir
1260 <ref id="upload-bugfix">).
1263 Il y a plusieurs raisons qui nous poussent à demander aux responsables d'annoncer
1264 leurs intentions :
1268 Les responsables ont ainsi la possibilité de puiser dans l'expérience
1269 des autres responsables et cela leur permet de savoir si une autre personne
1270 travaille déjà dessus.
1273 D'autres personnes qui envisagent de travailler sur le même paquet
1274 apprendront ainsi qu'il existe déjà un volontaire, l'effort peut alors
1278 Cela permet aux autres responsables d'en savoir plus sur le nouveau
1279 paquet que ne le permettent la description d'une ligne et l'habituelle
1280 entrée « <em>Initial release</em> » que l'on trouve dans les
1281 fichiers <em>changelog</em> qui sont postés sur
1282 <tt>debian-devel-changes</tt>.
1285 C'est une information utile pour les gens qui utilisent la
1286 distribution <em>unstable</em> et qui sont nos premiers testeurs. Nous
1287 devons faciliter la tâche de ces gens.
1290 Avec ces annonces, les développeurs Debian et toutes les autres personnes
1291 intéressées peuvent se faire une meilleure idée des évolutions et nouveautés du
1300 <sect id="uploading">Mettre à jour un paquet
1303 <sect1>Générer le fichier « changes »
1306 Chaque nouvelle version d'un paquet installé sur les archives FTP Debian doit
1307 être accompagnée d'un fichier <tt>.changes</tt>. Ce fichier explique à
1308 l'administrateur de l'archive Debian ce qu'il doit faire du paquet. Il est en
1309 général créé par <prgn>dpkg-genchanges</prgn> au cours du processus de
1310 fabrication du paquet.
1313 Le fichier <tt>changes</tt> est un fichier de contrôle qui contient les champs
1317 &control-file-fields;
1320 Tous ces champs sont obligatoires pour une installation sur les serveurs
1321 Debian. Vous pouvez consulter la liste des champs de contrôle dans le
1322 <url id="&url-debian-policy;" name="Debian Policy Manual"> pour connaître
1323 les valeurs que prennent ces champs. Vous pouvez fermer un rapport de bogue
1324 automatiquement avec le champ <tt>Description</tt> (voir <ref
1325 id="upload-bugfix">). Nous ne verrons ici que le champ <tt>Distribution</tt>
1326 car il est directement lié aux règles d'administration de l'archive.
1331 <sect1 id="upload-dist">Choisir une distribution
1334 Le champ <tt>Distribution</tt>, qui provient du fichier
1335 <file>debian/changelog</file>, indique à quelle distribution le paquet est
1336 destiné. Il y a quatre valeurs possibles pour ce champ : <em>stable</em>,
1337 <em>unstable</em>, <em>frozen</em> et <em>experimental</em> ; ces valeurs
1338 peuvent aussi être combinées. Si, par exemple, Debian a été gelée et vous
1339 voulez mettre à jour une correction de bogue sur <em>frozen</em>, il faudra
1340 indiquer <em>frozen unstable</em> dans le champ distribution (se reporter à
1341 <ref id="upload-frozen"> pour savoir quand vous pouvez faire une mise à jour
1342 sur <em>frozen</em>). Notez bien qu'il n'y a pas de raison de combiner
1343 <em>experimental</em> avec quelque distribution que ce soit.
1346 Vous devriez éviter de combiner <em>stable</em> avec d'autres cibles à cause
1347 des problèmes potentiels de dépendance de bibliothèque (pour votre paquet et
1348 pour les paquets fabriqués par le démon de compilation pour les autres
1349 architectures). Notez encore que choisir la valeur <em>stable</em> pour ce
1350 champ signifie que le paquet sera dirigé vers le répertoire
1351 <tt>proposed-update</tt> des archives Debian pour y être testé avant d'être
1352 effectivement inclus dans <em>stable</em>. L'équipe responsable de la
1353 distribution<footnote><em>the release team</em></footnote> (joignable à
1354 l'adresse &email-debian-release;) prendra la décision d'inclure ou de ne pas
1355 inclure votre paquet dans la distribution <em>stable</em>. C'est pourquoi vous
1356 pourrez choisir de leur envoyer un courrier expliquant les motifs qui vous ont
1357 incité à faire une mise à jour pour <em>stable</em>, si votre fichier
1358 <file>changelog</file> n'est pas suffisamment clair sur ce point.
1361 La première fois qu'un paquet est installé dans l'archive pour une version
1362 amont donnée, le fichier <tt>tar</tt> de cette version amont doit être
1363 téléchargé et mentionné dans le fichier <tt>.changes</tt>. Par la suite, ce
1364 fichier <tt>tar</tt> sera utilisé pour générer les fichiers <tt>diff</tt> et
1365 <tt>.dsc</tt> et il ne sera pas nécessaire de le re-télécharger.
1368 Par défaut, <prgn>dpkg-genchanges</prgn> et <prgn>dpkg-buildpackage</prgn>
1369 incluront le fichier <tt>tar</tt> amont si et seulement si le numéro de
1370 révision du paquet source est 0 ou 1, ce qui indique une nouvelle version
1371 amont. Ce comportement peut être modifié en utilisant <tt>-sa</tt> pour
1372 l'inclure systématiquement ou <tt>-sd</tt> pour ne jamais l'inclure.
1375 Si la mise à jour ne contient pas le fichier <tt>tar</tt> des sources
1376 originaux, <prgn>dpkg-source</prgn> <em>doit</em>, pour construire les
1377 fichiers <tt>.dsc</tt> et <tt>diff</tt> de la mise à jour, utiliser un fichier
1378 <tt>tar</tt> identique à l'octet près à celui sur le serveur. Si pour une
1379 raison ou pour une autre il y a une différence, la nouvelle version de ce
1380 fichier doit à nouveau être incluse dans la mise à jour (en utilisant l'option
1381 <tt>-sa</tt> par exemple).
1388 <sect2 id="upload-frozen">Mettre à jour la distribution <em>frozen</em>
1391 Le gel de la distribution est un moment crucial pour Debian. C'est l'occasion
1392 de synchroniser et de stabiliser notre distribution en un tout
1393 cohérent. Il faut donc être très vigilant quand on fait une mise à jour
1394 pour <em>frozen</em>.
1397 Il est tentant de toujours mettre en paquet la dernière version d'un logiciel
1398 pour Debian ; mais il est bien plus important que le système soit stable et
1399 qu'il fonctionne de la manière attendue.
1402 Le mot d'ordre pour télécharger vers <em>frozen</em> est : <strong>pas de code
1403 nouveau</strong>. C'est une chose difficile à quantifier, voici quelques
1409 Les corrections de bogues de sévérité <em>critique</em>,
1410 <em>grave</em> ou <em>sérieuse</em><footnote>respectivement
1411 <em>critical</em>, <em>grave</em> ou <em>serious</em></footnote> sont
1412 toujours autorisées pour les paquets qui doivent exister dans la
1416 Les corrections pour les bogues de sévérité <em>critique</em>,
1417 <em>grave</em> ou <em>sérieuse</em><footnote>respectivement
1418 <em>critical</em>, <em>grave</em> ou <em>serious</em></footnote> sont
1419 autorisées pour les paquets non indispensables uniquement si elles
1420 n'ajoutent pas de nouvelle fonctionnalité.
1423 Les corrections pour les bogues de sévérité <em>importante</em>,
1424 <em>normale</em> et <em>mineure</em><footnote>respectivement
1425 <em>important</em>, <em>normal</em> et <em>minor</em></footnote> sont
1426 autorisées, bien que découragées, sur tous les paquets si et seulement
1427 s'elles n'ajoutent pas de nouvelle fonctionnalité.
1430 Les corrections de sévérité <em>wishlist</em> ne sont pas autorisées (ce
1431 ne sont pas vraiment des bogues après tout).
1434 Les corrections liées à la documentation sont autorisés car il est
1435 important d'avoir une bonne documentation.
1440 L'expérience montre qu'il y a 15% de chance d'introduire un nouveau bogue en
1441 corrigeant un autre bogue. L'introduction et la découverte d'un nouveau bogue
1442 retarde la mise à disposition de la distribution ou affaiblit le produit
1443 final. Il y a très peu de corrélation entre la sévérité du bogue corrigé et
1444 la sévérité du bogue introduit par la correction.
1449 <sect1 id="upload-checking">Vérifier le paquet avant la mise à jour
1452 Avant de mettre à jour votre paquet vous ferez quelques tests de base. Vous
1453 devrez au moins faire les tests suivants (il vous faut une ancienne version
1454 du paquet pour cela) :
1458 Installez le paquet et vérifiez que le logiciel fonctionne. Si le
1459 paquet existait déjà dans une version plus ancienne, faites une mise à
1463 Exécutez <prgn>lintian</prgn> sur votre paquet. Vous pouvez exécuter
1464 <prgn>lintian</prgn> comme suit : <tt>lintian -v
1465 <var>package-version</var>.changes</tt>. Ce programme fera une
1466 vérification sur les paquets source et binaire. Si vous ne comprenez
1467 par les messages générés par <prgn>lintian</prgn> essayez l'option
1468 <tt>-i</tt>. Cette option rendra <prgn>lintian</prgn> beaucoup plus
1469 bavard dans sa description du problème. <p> Un paquet pour lequel
1470 <prgn>lintian</prgn> génère des erreurs (elles commencent par
1471 <tt>E</tt>) <em>ne doit pas</em> être installé dans l'archive.
1474 Pour en savoir plus sur <prgn>lintian</prgn> reportez-vous à la
1475 section lintian <ref id="lintian">. <item> Faites régresser le paquet
1476 vers sa version précédente si elle existe — cela permet de tester les
1477 scripts <tt>postrm</tt> et <tt>prerm</tt>.
1480 Désinstallez le paquet et réinstallez-le.
1488 <sect1 id="upload-ftp-master">Installer un paquet sur
1492 Pour installer un paquet vous avez besoin d'un compte sur
1493 <ftpsite>ftp-master</ftpsite>, ce que vous devez avoir en tant que
1494 développeur Debian. Si vous utilisez <prgn>scp</prgn> ou <prgn>rsync</prgn>
1495 pour télécharger vos paquets, placez-les dans
1496 <tt>&us-upload-dir;</tt>. Si vous utilisez un FTP anonyme,
1497 placez-les dans <ftppath>/pub/UploadQueue/</ftppath>.
1500 <em>Note :</em> ne téléchargez pas de paquet soumis aux lois de contrôle des
1501 exportations américaines sur le serveur <tt>ftp-master</tt>, ni sur les serveurs
1502 <tt>chiark</tt> et <tt>erlangen</tt>. Cet interdit couvre à peu près tous les
1503 logiciels de cryptographie ainsi que quelques logiciels liés aux logiciels de
1504 cryptographie comme les clients de courrier électronique qui utilisent le
1505 cryptage et l'authentification PGP. Ces logiciels doivent être téléchargés sur
1506 le serveur <tt>non-us</tt>. Reportez-vous à la section <ref
1507 id="upload-non-us"> pour en savoir plus. Si vous ne savez pas si votre paquet
1508 est soumis aux lois de contrôle des exportations américaines posez la question sur la
1509 liste &email-debian-devel;.
1512 Le paquet <package>dupload</package> pourra vous faciliter le travail lors du
1513 téléchargement. Ce programme, bien pratique, est configuré par défaut pour
1514 se connecter par FTP sur les serveurs <tt>ftp-master</tt>,
1515 <tt>chiark</tt> et <tt>erlangen</tt>. Il peut aussi être configuré pour
1516 utiliser <prgn>ssh</prgn> ou <prgn>rsync</prgn>. Se reporter à <manref
1517 name="dupload" section="1"> et <manref name="dupload" section="5"> pour en
1521 Après avoir téléchargé votre paquet, vous pouvez vérifier ce qu'en fera le
1522 logiciel de maintenance de l'archive en exécutant <prgn>dinstall</prgn>
1523 sur votre fichier <file>.changes</file> :
1525 <example>dinstall -n foo.changes</example>
1531 <sect1 id="upload-non-us">Installer un paquet sur <tt>non-US</tt>
1535 Comme nous l'avons dit un peu plus haut, les programmes soumis au contrôle des
1536 exportations américain ne doivent pas être installés sur <tt>ftp-master</tt>.
1537 Utilisez <prgn>scp</prgn> ou <prgn>rsync</prgn> pour copier votre paquet sur
1538 <ftpsite>non-us.debian.org</ftpsite>. Placer les fichiers dans le répertoire
1539 <tt>&non-us-upload-dir;</tt>. Par défaut, vous pouvez utiliser le même
1540 <em>login/mot de passe</em> que pour <tt>ftp-master</tt>. Si vous utilisez
1541 une connexion FTP anonyme pour le téléchargement, placez vous fichiers dans le
1542 répertoire <ftppath>/pub/UploadQueue/</ftppath>.
1545 Le programme <prgn>dupload</prgn> est, lui aussi, capable de télécharger sur
1546 <tt>non-us</tt> ; consultez la documentation de ce programme pour en savoir
1550 Tout comme sur <tt>ftp-master</tt>, vous pouvez vérifier votre téléchargement
1553 <example>dinstall -n foo.changes</example>
1557 Attention, les personnes résidant aux États-unis et les citoyens américains
1558 sont soumis à des restrictions sur l'exportation des logiciels de
1559 cryptographie. Au moment où j'écris, les citoyens américains peuvent exporter
1560 quelques logiciels de cryptographie soumis à une obligation de déclaration
1561 auprès du département du commerce américain.
1564 Le <em>Debian Policy Manual</em> n'empêche pas les résidents et citoyens
1565 américains de livrer des paquets sur <tt>non-US</tt> mais ils devront être
1566 vigilants en le faisant. Nous recommandons aux responsables concernés de
1567 prendre toutes les précautions nécessaires, <em>y compris consulter un
1568 juriste</em>, pour s'assurer qu'ils n'enfreignent pas une loi américaine en
1569 livrant un paquet sur <tt>non-US</tt>.
1572 Pour les paquets des sections <em>non-US/main</em> et <em>non-US/contrib</em>
1573 les responsables devraient au moins suivre la <url id="&url-u.s.-export;"
1574 name="procédure décrite par le gouvernement américain">. Les responsables de
1575 paquets <em>non-US/non-free</em> devront en plus consulter les <url
1576 id="&url-notification-of-export;" name="règles de déclaration d'exportation
1577 pour les logiciels commerciaux">.
1580 Cette section a pour seul but d'informer, elle n'a pas valeur de conseil
1581 juridique. Une fois encore, nous recommandons aux résidents et citoyens
1582 américains de consulter un juriste avant de livrer un paquet sur
1586 <sect1>Installer un paquet via <tt>chiark</tt>
1589 Si votre connexion vers <tt>ftp-master</tt> est lente, vous avez plusieurs
1590 possibilités. L'une d'elles consiste à télécharger vos fichiers dans
1591 <tt>Incoming</tt> en passant par le serveur <tt>chiark</tt> en Europe. Comme
1592 cette file d'attente des mises à jour est redirigée vers <tt>ftp-master</tt>,
1593 les indications de la section <ref id="upload-ftp-master"> sont applicables ici
1597 Le programme <prgn>dupload</prgn> est capable de télécharger sur
1598 <tt>chiark</tt> ; consultez la documentation de ce programme pour en savoir
1603 <sect1>Installer un paquet via <tt>erlangen</tt>
1606 Vous pouvez aussi accéder à un serveur situé en Allemagne : il vous suffit
1607 d'ouvrir une connexion anonyme sur :
1610 <url id="&url-upload-erlangen;">.
1613 Le téléchargement fait sur ce serveur doit être aussi complet que s'il
1614 était fait dans le répertoire <tt>Incoming</tt> sur <tt>ftp-master</tt> :
1615 il doit comporter le fichier <file>.changes</file> et tous les fichiers
1616 mentionnés dans ce dernier. Le serveur vérifie que le fichier
1617 <tt>.changes</tt> est bien signé avec la clé PGP d'un développeur Debian pour
1618 éviter que des faux paquets n'atteignent <tt>ftp-master</tt>. Vérifiez bien
1619 que le champ <tt>Maintainer</tt> du fichier <tt>.changes</tt> contient
1620 <em>votre</em> adresse électronique. De même que sur <tt>ftp-master</tt>,
1621 cette adresse est ensuite utilisée pour toutes les réponses.
1624 Il n'est pas nécessaire de déplacer votre fichier dans un autre répertoire
1625 après le téléchargement, contrairement au serveur <tt>chiark</tt>. Vous
1626 devriez ensuite recevoir un courrier du serveur expliquant ce qu'il a fait de
1627 votre paquet. Normalement, il devrait avoir été déplacé vers
1628 <tt>ftp-master</tt> ;
1629 vous serez informé par le même biais si une erreur s'est produite au cours du
1633 <em>Note :</em> ne téléchargez pas de paquets contenant des logiciels tombant
1634 sous le coup de la loi de contrôle des exportations américaine sur
1635 <tt>erlangen</tt>. Comme les paquets téléchargés ici vont vers
1636 <tt>ftp-master</tt>, les règles décrites dans la section <ref
1637 id="upload-ftp-master"> sont applicables ici aussi.
1640 Le programme <prgn>dupload</prgn> est capable de télécharger sur
1641 <tt>erlangen</tt> ; consultez la documentation de ce programme pour en savoir
1648 <sect1>Les autres serveurs
1651 Un autre serveur est disponible aux États-Unis ; c'est un bon point
1652 de repli quand il est difficile de joindre <tt>ftp-master</tt>. Livrez vos
1653 paquets à l'adresse <url id="&url-upload-samosa;"> comme vous le feriez sur
1656 Il existe aussi un serveur au Japon : téléchargez vos paquet par FTP
1657 anonyme sur <url id="&url-upload-jp;">.
1662 <sect id="upload-announce">Annoncer une mise à jour
1665 Quand un paquet est mis à jour, une annonce doit être envoyée sur l'une des
1666 listes « debian-changes ». Ceci est maintenant géré automatiquement
1667 par le logiciel de gestion de l'archive quand il est exécuté (en principe une
1668 fois par jour). Vous devez juste utiliser une version récente de
1669 <package>dpkg-dev</package> (>= 1.4.1.2). Le courrier généré par le
1670 logiciel de maintenance de l'archive contiendra le fichier <tt>.changes</tt>
1671 signé que vous avez livré avec votre paquet. Précédemment, cette charge
1672 revenait à <prgn>dupload</prgn> ; vérifiez que vous avez bien configuré
1673 <prgn>dupload</prgn> pour qu'il n'envoie pas ces annonces (cherchez
1674 <tt>dinstall_runs</tt> dans la documentation de <prgn>dupload</prgn>).
1677 Si un paquet est mis à jour pour la distribution <em>stable</em>, l'annonce
1678 est envoyée sur la liste :
1681 <tt> &email-debian-changes;.</tt>
1684 S'il est mis à jour pour les distributions <em>unstable</em>,
1685 <em>experimental</em> ou <em>frozen</em>, l'annonce est envoyée sur la liste
1686 &email-debian-devel-changes;.
1689 De temps en temps, il est nécessaire de mettre à jour simultanément les
1690 distributions <em>stable</em> et <em>unstable</em> ; cela est possible en
1691 indiquant les deux distributions sur la ligne <tt>Distribution:</tt>. Dans ce
1692 dernier cas, l'annonce sera faite sur les deux listes de diffusion citées
1696 Le programme <prgn>dupload</prgn> est suffisamment intelligent pour déterminer
1697 où devra aller l'annonce et pour envoyer le courrier sur la bonne liste. Voir <ref
1703 <sect id="upload-notification">
1704 <heading>Notification de l'installation d'un nouveau paquet</heading>
1707 Les administrateurs de l'archive Debian sont responsables de l'installation
1708 des mises à jour. La plupart des mises à jour sont gérées
1709 quotidiennement par le logiciel de gestion de l'archive <prgn>katie</prgn>.
1711 de paquets sur la distribution <em>unstable</em>, en particulier, sont
1712 installés ainsi. Dans les autres cas et notamment dans le cas d'un nouveau
1713 paquet, celui-ci sera installé manuellement. Il peut s'écouler jusqu'à un mois
1714 entre le téléchargement d'un paquet vers un serveur et son installation
1715 effective. Soyez patients.
1718 Dans tous les cas vous recevrez un accusé de réception par courrier
1719 électronique indiquant que votre paquet a été installé et quels rapports
1720 de bogues ont été clos. Lisez attentivement ce courrier et vérifiez que tous
1721 les rapports de bogues que vous vouliez clore sont bien dans cette liste.
1724 L'accusé de réception indique aussi la section dans laquelle le paquet a
1725 été installé. S'il ne s'agit pas de votre choix, vous recevrez un second
1726 courrier qui vous informera de cette différence (voir plus loin).
1731 <sect1 id="override-file">Le fichier <em>override</em>
1734 Les champs <tt>Section</tt> et <tt>Priority</tt> du fichier
1735 <file>debian/control</file> n'indiquent ni où le paquet sera installé dans
1736 l'archive Debian ni sa priorité. Afin de conserver la
1737 cohérence de l'archive, ce sont les administrateurs qui contrôlent ces
1738 champs. Les valeurs du fichier <file>debian/control</file> sont juste des
1742 Les administrateurs de l'archive indiquent les sections et priorités des paquets
1743 dans le fichier <em>override</em>. Si ce fichier <em>override</em> et le
1744 fichier <file>debian/control</file> de votre paquet diffèrent, vous en serez
1745 informé par courrier électronique quand votre paquet sera installé dans
1746 l'archive. Vous pourrez corriger votre fichier <em>debian/control</em>
1747 avant votre prochain téléchargement ou alors vous aurez envie de modifier le
1748 fichier <em>override</em>.
1751 Pour modifier la section dans laquelle un paquet est archivé, vous devez
1752 d'abord vérifier que fichier <file>debian/control</file> est correct. Ensuite,
1753 envoyez un courrier à &email-override; ou un rapport de bogue sur le pseudo
1754 paquet <package>ftp.debian.org</package> demandant la modification de la
1755 section ou de la priorité de votre paquet. Exposez bien les raisons qui vous
1756 amènent à demander ces changements.
1759 Pour en savoir plus sur le fichier <em>override</em>, reportez-vous à <manref
1760 name="dpkg-scanpackages" section="8">, &file-bts-mailing; et &file-bts-info;.
1765 <chapt id="nmu">Mise à jour indépendante
1768 Dans certaines circonstances il est nécessaire qu'une personne autre que le
1769 responsable d'un paquet fasse une mise à jour de ce paquet. Ce type de mise à
1770 jour est désigné en anglais par l'expression <em>non-maintainer upload
1771 (NMU)</em>. Dans le présent document, nous traduisons librement cette
1772 expression par « mise à jour indépendante ».
1775 Ces mises à jour indépendantes font partie du travail normal des porteurs qui
1776 compilent les paquets pour d'autres architectures (voir <ref id="porting">).
1777 Nous faisons aussi des mises à jour indépendantes quand un développeur Debian
1778 corrige le paquet d'un autre développeur pour éliminer un trou de sécurité
1779 ou un bogue paralysant. Cela se produit plus particulièrement en période de
1780 gel de la distribution de développement ou quand le responsable officiel du
1781 paquet ne peut pas fournir une correction dans un délai raisonnable.
1784 Ce chapitre contient des informations qui vous expliqueront quand et comment
1785 faire des mises à jour indépendantes. Une distinction fondamentale doit être
1786 faite entre les mises à jour indépendantes sources et les mises à jour
1787 indépendantes binaires. Elle est explicitée dans la section suivante.
1790 <sect id="nmu-terms">Terminologie
1793 Deux nouvelles expressions sont introduites dans cette section :
1794 « mise à jour indépendante source » et « mise à
1795 jour indépendante binaire ». Ces expressions ont une définition
1796 précie dans le monde Debian. Elles correspondent toutes deux au même type
1797 d'activité ; elles impliquent toutes deux qu'une personne fait une mise à
1798 jour d'un paquet alors qu'elle n'est pas officiellement responsable de ce
1799 paquet. C'est pourquoi nous qualifions ces mises à jours
1800 d'<em>indépendantes</em><footnote>Contrairement à ce que pourrait laisser
1801 entendre cette traduction de <em>non-maintainer upload</em>, il n'est pas
1802 question d'agir sans prévenir le responsable au préalable (voir <ref
1803 id="nmu-guidelines">).</footnote>.
1806 Une mise à jour indépendante source est une livraison de paquet faite par
1807 une personne qui n'est pas le responsable officiel de ce paquet avec pour
1808 objectif de corriger un bogue dans le paquet. Une mise à jour indépendante
1809 source implique toujours une modification des sources du paquet, même s'il
1810 ne s'agit que d'un changement dans le fichier <file>debian/changelog</file>.
1811 Ce changement peut tout aussi bien concerner la partie amont du source que la
1812 partie spécifique à Debian. Une mise à jour indépendante source peut aussi
1813 inclure des paquets spécifiques à une architectures, un fichier <em>diff</em>
1814 modifié ou, plus rarement, des nouveaux sources amonts.
1817 Une mise à jour indépendante binaire est une recompilation et un archivage
1818 d'un paquet pour une architecture donnée. Il s'agit souvent du résultat d'un
1819 effort de portage. Une mise à jour indépendante binaire est la livraison d'un
1820 paquet compilé (souvent pour une autre architecture) à condition que cette
1821 compilation n'ait pas nécessité de modifications des sources. Dans de
1822 nombreux cas, les porteurs
1823 sont obligés de modifier les sources pour les rendre compilables sur leur
1824 architecture cible ; il s'agira alors d'une mise à jour indépendante source et
1825 non d'une mise à jour indépendante binaire. Comme vous pouvez le remarquer,
1826 nous ne faisons pas de distinction entre les mises à jour indépendantes
1827 faites par des porteurs et les autres mises à jour indépendantes.
1830 Les mises à jour indépendantes sources et binaires sont toutes deux couvertes
1831 par l'expression « mise à jour indépendante »
1832 (NMU<footnote>Non-maintainer upload</footnote>). Pourtant cela conduit souvent
1833 à des confusions car beaucoup associent « mise à jour indépendante »
1834 et « mise à jour indépendante source ». Il faut donc rester
1835 vigilant. Dans ce chapitre, si nous utilisons « mise à jour
1836 indépendante » seul, il s'agit des deux types de livraisons.
1842 <sect id="nmu-who">Qui peut faire une mise à jour indépendante ?
1845 Seuls les responsables Debian officiels peuvent faire des mises à jour
1846 indépendantes. Un responsable officiel est une personne dont la clé est dans
1847 le porte-clés Debian. Toute personne est invitée à télécharger les paquets
1848 sources pour corriger des bogues ; au lieu de faire des mises à jour
1849 indépendantes, ils pourront soumettre les <em>patch</em> qui le méritent au
1850 système de suivi des bogues. Les responsables apprécient presque toujours les
1851 <em>patch</em> et les rapports de bogue soignés.
1854 <sect id="nmu-when">Quand faire une mise à jour indépendante source ?
1857 Les recommandations pour déterminer quand faire une mise à jour indépendante
1858 source dépendent de la distribution visée (i.e. stable, instable ou
1859 gelée). Les porteurs, ayant une activité particulière, obéissent à des règles
1860 légèrement différentes (voir <ref id="source-nmu-when-porter">).
1863 La distribution stable ne peut recevoir que des corrections critiques ou des
1864 mises à jour de sécurité. Quand une faille de sécurité est détectée, un
1865 paquet corrigé doit être livré le plus tôt possible. Dans ce cas, le responsable de
1866 sécurité Debian<footnote>Debian Security Manager</footnote> entrera en contact
1867 avec le responsable du paquet pour s'assurer qu'un paquet corrigé sera livré dans
1868 un délai raisonnable (moins de 48 heures). Si le mainteneur ne peut
1869 fournir une mise à jour suffisamment vite ou s'il ne peut être joint à temps, le
1870 responsable de sécurité pourra corriger le paquet (i.e. faire une mise à jour
1871 indépendante source).
1874 Pendant la phase de gel (voir <ref id="upload-frozen">), les livraisons qui
1875 corrigent les bogues de sévérité <em>sérieuse</em> (i.e. <em>serious</em>) et
1876 supérieures sont encouragées et acceptées. Même pendant cette période, vous
1877 devrez tenter d'entrer en contact avec le responsable du paquet ; il pourrait
1878 bien être sur le point de livrer un paquet corrigé lui aussi. Comme pour
1879 n'importe quelle mise à jour indépendante source, les recommandations de la
1880 section <ref id="nmu-guidelines"> doivent être respectées.
1883 Les mises à jour indépendantes sont aussi acceptable pour la distribution
1884 instable mais seulement en dernier ressort
1885 ou avec une autorisation. Essayez d'abord ce qui suit et si cela ne fonctionne
1886 pas il est probablement correct de faire une mise à jour indépendante
1887 <em>(NMU)</em> :
1892 Vérifiez que le bogue est bien référencé dans le système de suivi des
1893 bogues. S'il n'y est pas, faites un rapport de bogue.
1896 Envoyez un courrier au responsable du paquet et proposez votre aide
1897 pour corriger le bogue. Donnez-lui quelques jours.
1900 Lancez-vous. Corrigez le bogue et envoyez votre <em>patch</em> au système de
1901 suivi des bogues. Construisez le paquet et testez-le comme décrit dans
1902 la section <ref id="upload-checking">. Utilisez le paquet chez vous.
1905 Attendez une réponse pendant quelques semaines.
1908 Envoyez un courrier au responsable lui demandant son accord pour faire
1909 une mise à jour indépendante <em>(NMU)</em>.
1912 Vérifiez une nouvelle fois que votre modification n'a pas d'effet de
1913 bord inattendu et qu'elle est aussi minimaliste et peu intrusive que
1917 Attendez une réponse une semaine encore.
1920 Faites votre mise à jour indépendante comme décrit dans la section
1921 <ref id="nmu-guidelines">.
1930 <sect id="nmu-guidelines">Comment faire une mise à jour indépendante
1934 Les règles qui suivent s'appliquent aux porteurs tant qu'ils jouent le double
1935 rôle de correcteur de bogue et de porteur. Si un porteur doit modifier le
1936 paquet source, cette mise à jour est automatiquement une mise à jour
1937 indépendante source et est soumise aux règles qui suivent. Si un porteur
1938 construit un paquet binaire recompilé, les règles sont différentes (voir <ref
1939 id="porter-guidelines">.
1942 Tout d'abord il est capital que ces mises à jour indépendantes soient aussi peu
1943 intrusives que possible. Ne faites pas de ménage, ne modifiez pas le nom des
1944 modules ou des fichiers, ne déplacez pas les répertoires ; plus généralement ne
1945 corrigez pas ce qui n'est pas cassé. Faites un <em>patch</em> aussi petit que
1946 possible. Si certaines choses froissent votre sens de l'esthétique, parlez-en
1947 au responsable du paquet, au responsable amont ou soumettez un rapport de
1948 bogue. Quoiqu'il en soit, les changements esthétiques <em>ne doivent pas</em>
1949 être faits lors d'une mise à jour indépendante.
1955 <sect1 id="nmu-version">Numéro de version pour les mises à jour
1956 indépendantes sources
1959 Chaque fois que vous modifiez un paquet, le numéro de version de ce paquet doit
1960 changer, même pour la plus triviale des modifications. Notre système de
1961 gestion de paquets s'appuie sur ces numéros de version.
1964 Si vous faites une mise à jour indépendante <em>(NMU)</em>, vous devez ajouter
1965 un numéro de version mineur à la partie <var>debian-revision</var> du numéro
1966 de version (la partie qui suit le dernier trait d'union). Ce numéro
1967 supplémentaire débutera à « 1 ». Prenons pour exemple le paquet
1968 « foo » qui porte le numéro de version 1.1-3. Dans l'archive, le
1969 fichier de contrôle du paquet source serait <file>foo_1.1-3.dsc</file>. La
1970 version amont est « 1.1 » et la révision Debian est « 3 ».
1971 La mise à jour indépendante suivante ajouterait le numéro de version mineur
1972 « .1 » au numéro de révision Debian; le nouveau fichier de contrôle
1973 du paquet source serait alors <file>foo_1.1-3.1.dsc</file>.
1976 Le numéro de révision mineur est nécessaire pour éviter de prendre un numéro
1977 de version au responsable officiel du paquet, ce qui pourrait perturber son
1978 travail. Cela a aussi l'avantage de montrer clairement que le paquet n'a pas
1979 été livré par le responsable officiel.
1982 S'il n'y a pas de partie <var>debian-revision</var> dans le numéro de version
1983 du paquet, il faut en créer une en démarrant à « 0.1 ». S'il est
1984 absolument nécessaire qu'une personne qui n'est pas responsable d'un paquet
1985 fasse une livraison basée sur une nouvelle version amont, cette personne
1986 doit choisir « 0.1 » comme numéro de révision Debian. Le mainteneur
1987 du paquet doit, lui, démarrer sa numérotation à « 1 ». Notez que pour
1988 faire cela vous devrez utiliser <prgn>dpkg-buildpackage</prgn> avec l'option
1989 <tt>-sa</tt> pour le forcer à utiliser le nouveau paquet source (par défaut il
1990 reconnaît les numéros de révisions « 0 » ou « 1 » — il
1991 n'est pas suffisamment intelligent pour reconnaître « 0.1 »).
1994 Attention, les porteurs qui ne font que recompiler les paquets pour d'autres
1995 architectures n'ont pas besoin de renuméroter les paquets. Les porteurs ne
1996 doivent utiliser de nouveaux numéros de version que s'ils modifient les
1997 paquets sources qu'ils recompilent, c'est-à-dire s'ils font une mise à jour
1998 indépendante source et non une mise à jour indépendante binaire.
2004 <sect1 id="nmu-changelog">
2005 <heading>Les mises à jour indépendantes sources doivent être
2006 mentionnées dans le fichier changelog</heading>
2009 Une personne qui fait une mise à jour indépendante source doit ajouter une
2010 entrée dans le fichier <file>changelog</file> qui indique les bogues corrigés
2011 et qui précise pourquoi cette mise à jour était nécessaire. Cette entrée
2012 comportera l'adresse de la personne ayant fait la mise à jour ainsi que la
2016 Par convention, dans le cas d'une mise à jour indépendante source
2017 <em>(NMU)</em>, l'entrée du fichier changelog débute par la ligne
2020 * Non-maintainer upload
2027 <sect1 id="nmu-patch">Mise à jour indépendante source et système
2031 Un développeur qui n'est pas responsable d'un paquet doit faire aussi peu de
2032 modifications que possible et doit toujours envoyer ses modifications au
2033 système de suivi des bogues au format diff unifié (<tt>diff -u</tt>).
2036 En cas de simple recompilation du paquet, le processus diffère
2037 suivant que vous agissez en tant que porteur ou pas. Si vous faites une mise
2038 à jour indépendante qui ne nécessite rien de plus qu'une recompilation et
2039 n'agissez pas en temps que porteur (i.e. une nouvelle bibliothèque partagée
2040 est disponible, un bogue a été corrigé dans <package>debhelper</package>),
2041 vous devez tout de même ajouter une entrée dans le fichier <em>changelog</em>;
2042 il y aura donc une modification. Si vous êtes porteur, vous êtes probablement
2043 en train de faire une mise à jour indépendante binaire. (Note : ce système ne
2044 tient pas compte des porteurs qui font des recompilations — tenez cela pour
2045 une faiblesse de notre système de gestion des paquets.)
2048 Si la mise à jour indépendante source corrige des bogues, vous devez le
2049 <em>notifier</em> au système de suivi des bogues mais vous ne devez pas
2050 <em>clore</em> les rapports de bogue. Seul le responsable officiel d'un paquet
2051 et le rapporteur du bogue sont autorisés à fermer un rapport de bogue.
2052 Cependant, la personne qui fait une mise à jour indépendante doit envoyer une
2053 note à chaque bogue concerné expliquant qu'il est corrigé par cette mise à
2054 jour indépendante. Cette personne doit ensuite utiliser l'adresse
2055 <email>control@bugs.debian.org</email> pour modifier la sévérité des bogues
2056 corrigés et leur donner la valeur <em>corrigé</em> (i.e. <em>fixed</em>).
2057 Cela permet de s'assurer que chacun sait que le bogue est corrigé par une mise
2058 à jour indépendante tout en laissant le rapport de bogue ouvert jusqu'à ce que
2059 le responsable du paquet incorpore les modifications de cette mise à jour dans
2060 la version officielle du paquet. Si nécessaire, ouvrez des rapports de bogue
2061 avec les <em>patch</em> correspondants ou assurez-vous que l'un des rapports de
2062 bogue déjà ouverts comporte ces <em>patch</em>.
2065 Le responsable officiel pourra choisir d'appliquer le <em>patch</em>, il pourra aussi
2066 employer une autre méthode pour régler le problème. Certains bogues sont
2067 corrigés dans la version amont, ce qui est une bonne raison pour annuler les
2068 modifications d'une mise à jour indépendante. Si le responsable choisit de
2069 mettre à jour le paquet sans utiliser les <em>patch</em> de la mise à jour
2070 indépendante, il devra s'assurer que cette nouvelle version corrige
2071 effectivement chacun des bogues corrigés dans la mise à jour indépendante.
2074 De plus, le responsable officiel devrait <em>toujours</em> conserver les
2075 entrées documentant une mise à jour indépendante dans le fichier
2076 <file>changelog</file>.
2083 <sect1 id="nmu-build">Fabriquer une mise à jour indépendante source
2086 Les paquets faisant l'objet d'une mise à jour indépendante source sont
2087 construits comme les
2088 autres. Sélectionnez une distribution en utilisant les règles décrites dans
2089 la section <ref id="upload-dist"> et construisez un fichier <tt>.changes</tt>
2090 classique avec tout ce qui l'accompagne conformément à la description <ref
2094 En fait, toutes les prescriptions de la section <ref id="upload"> sont
2095 applicables ici, y compris l'obligation d'annoncer la mise à jour sur la liste
2099 Vérifiez que vous n'avez pas modifié la valeur du champ <tt>maintainer</tt>
2100 dans le fichier <file>debian/control</file>. Votre nom, mentionné dans
2101 l'entrée du fichier <file>debian/changelog</file> concernant la mise à jour,
2102 sera utilisé pour signer le fichier <tt>.changes</tt>.
2107 <chapt id="porting">Le portage
2110 Debian supporte un nombre croissant d'architectures. Même si vous n'êtes pas
2111 un porteur et même si vous n'utilisez qu'une architecture, il est de votre
2112 responsabilité de développeur d'être attentif aux questions de portabilité.
2113 C'est pourquoi il est important que vous lisiez ce chapitre même si vous
2114 n'êtes pas un porteur.
2117 Porter un paquet consiste à faire un paquet binaire pour une architecture
2118 différente de celle du paquet binaire fait par le responsable du paquet.
2120 activité remarquable et essentielle. En fait, les porteurs sont à l'origine
2121 de la plupart des compilations de paquet Debian. Pour un paquet binaire
2122 <em>i386</em>, par exemple, il faut compter une recompilation pour chaque
2123 autre architecture, soit un total de &number-of-arches; recompilations.
2128 <sect id="kind-to-porters">Être gentil avec les porteurs
2131 Les porteurs ont une tâche remarquable et difficile car ils doivent gérer un
2132 grand nombre de paquets. Idéalement, tout paquet source devrait compiler sans
2133 modification. Malheureusement, c'est rarement le cas. Cette section contient
2134 une liste d'erreurs commises régulièrement par les responsables Debian —
2135 problèmes courants qui bloquent souvent les porteurs et compliquent
2136 inutilement leur travail.
2139 Ici, le mot d'ordre est de répondre rapidement aux rapports de bogues et
2140 remarques soulevées par les porteurs. Traitez-les courtoisement, comme s'ils
2141 étaient co-responsables de vos paquets (ce qu'ils sont d'une certaine
2142 manière). Merci pour votre indulgence envers des rapport de bogues succints ou
2143 peu clair ; faites de votre mieux pour éliminer le problème.
2146 Les problèmes les plus couramment rencontrés par les porteurs sont causés par
2147 des erreurs de mise en paquet dans le paquet source. Voici une
2148 <em>checklist</em> de choses auxquelles vous devez être attentif :
2152 Vérifiez que les champs <tt>Build-Depends</tt> et
2153 <tt>Build-Depends-Indep</tt> du fichier <file>debian/control</tt> sont
2154 corrects. Le meilleur moyen pour vérifier cela est d'utiliser le
2155 paquet <package>debootstrap</package> pour créer un environnement
2156 <em>unstable</em> <em>chrooter</em>. Dans cet environnement
2157 <em>chrooté</em> il faudra installer le paquet
2158 <package>build-essential</package> et tous les paquets mentionnés dans
2159 les champs <tt>Build-Depends</tt> et <tt>Build-Depends-Indep</tt>.
2160 Ensuite, vous essayerez de fabriquer votre paquet dans cette
2163 Consultez le <url id="&url-debian-policy;" name="Debian Policy
2164 Manual"> pour en savoir plus sur les dépendances de fabrication.
2166 Ne choisissez pas d'autre valeur que <em>all</em> ou <em>any</em> pour
2167 le champ architecture sans avoir de bonnes raisons pour le faire. Trop
2168 souvent, les développeurs ne respectent pas les instructions du
2169 <url id="&url-debian-policy;" name="Debian Policy Manual">. Choisir
2170 la valeur « i386 » est la plupart du temps incorrect.
2173 Vérifiez que votre paquet source est bon. Faites <tt>dpkg-source -x
2174 <var>package</var>.dsc</tt> pour vous assurer que le paquet se
2175 désarchive correctement. En utilisant le résultat de ce test,
2176 construisez votre paquet binaire à l'aide de la commande
2177 <tt>dpkg-buildpackage</tt>.
2180 Vérifiez que les fichiers <file>debian/files</file> et
2181 <file>debian/substvars</file> ne sont pas dans votre paquet source.
2182 Ils doivent être effacés par la cible <em>clean</em> de
2183 <file>debian/rules</file>.
2186 Assurez-vous que vous ne vous appuyez pas sur des éléments de
2187 configuration ou des logiciels installés ou modifiés localement. Par
2188 exemple, vous ne devriez jamais appeler des programmes du répertoire
2189 <file>/usr/local/bin</file> ou de répertoires équivalents. Essayez de ne pas vous
2190 appuyer sur des logiciels configurés de manière spéciale. Essayez de
2191 construire votre paquet sur une autre machine, même s'il s'agit de la
2195 Ne vous appuyez pas sur une installation préexistante de votre paquet
2196 (un sous-cas de la remarque précédente).
2199 Si possible, ne vous appuyez pas sur une particularité présente dans
2200 un compilateur précis ou dans certaines version d'un compilateur. Si
2201 vous ne pouvez pas faire autrement, assurez-vous que les dépendances
2202 de fabrication reflètent bien cette restriction. Dans ce cas, vous
2203 cherchez surement les problèmes car quelques architectures pourraient
2204 choisir un compilateur différent.
2207 Vérifiez que votre <file>debian/rules</file> distingue les cibles
2208 <em>binary-arch</em> et <em>binary-indep</em> comme l'exige le
2209 <em>Debian packaging manual</em>. Vérifiez que ces cibles sont
2210 indépendantes l'une de l'autre, c'est à dire qu'il n'est pas
2211 nécessaire d'invoquer l'une de ces cibles avant d'invoquer l'autre.
2212 Pour vérifier cela, essayez d'exécuter <tt>dpkg-buildpackage -b</tt>.
2219 <sect id="porter-guidelines">Instructions pour les mises à jour des
2223 Si le paquet se construit tel quel sur l'architecture que vous visez, vous avez
2224 de la chance et votre travail est facile. Cette section s'applique dans ce
2225 cas ; elle décrit comment construire et installer correctement votre mise à
2226 jour indépendante binaire dans l'archive Debian. Si vous devez modifier le
2227 paquet pour le rendre compilable sur votre architecture cible vous devez faire
2228 une mise à jour des sources, consultez la section <ref id="nmu-guidelines">.
2231 Pour une mise à jour indépendante binaire, ne faites pas de changement
2232 dans les sources. Vous n'avez pas besoin de modifier les fichiers du paquet
2233 source (cela inclut <file>debian/changelog</file>).
2236 La manière d'invoquer <prgn>dpkg-buildpackage</prgn> est la suivante :
2237 <tt>dpkg-buildpackage -B -e<var>adresse-porteur</var></tt>. Bien sûr,
2238 remplacez <var>adresse-porteur</var> par votre adresse électronique. Cette
2239 commande construira les portions du paquet qui dépendent de l'architecture, en
2240 utilisant la cible <em>binary-arch</em> de <file>debian/rules</file>.
2243 <sect1 id="recompile-nmu-versioning">
2244 <heading>Numéro de version des mises à jour indépendantes
2248 Parfois il est nécessaire de recompiler des paquets quand d'autres paquets,
2249 tels que les bibliothèques, ont été mis à jour. Dans ce cas, vous devez
2250 changer le numéro de version pour que le système de comparaison des numéros de
2251 version fonctionne correctement. Ce type de mise à jour reste une mise à jour
2252 indépendante binaire — il n'est pas nécessaire de reconcidérer le status
2253 des paquets binaires des autres architectures pour les marquer périmés ou à
2257 Ces recompilations nécessitent des numéros de version « magiques » pour que le
2258 système de maintenance de l'archive comprennent que, bien qu'il y ait une
2259 nouvelle version, il n'y a pas eu de modification des sources. Si vous ne
2260 faites pas cela correctement, les administrateurs de l'archive rejeteront
2261 votre mise à jour (car il n'y aura pas de code source associé).
2264 Cette magie associée à une mise à jour par recompilation est déclenchée en
2265 utilisant un troisième nombre dans la partie debian du numéro de version. Si,
2266 par exemple, la dernière version du paquet que vous recompilez était
2267 « 2.9-3 », votre mise à jour portera le numéro
2268 « 2.9-3.0.1 ». Si cette version était « 3.4-2.1 » votre
2269 mise à jour portera le numéro « 3.4-2.1.1&nbps;».
2274 <sect1 id="source-nmu-when-porter"> <heading>Quand faire une mise à
2275 jour indépendante source pour un portage ?</heading>
2278 Les porteurs qui font des mises à jour indépendantes sources suivent
2279 généralement les instructions de la section <ref id="nmu"> tout comme les
2280 non-porteurs. Les délais d'attente sont cependant plus courts car les porteurs
2281 doivent manipuler un grand nombre de paquets.
2284 À nouveau, la situation diffère selon la distribution visée. Une correction
2285 cruciale (i.e. rendre un paquet compilable sur une architecture supportée par
2286 la prochaine distribution) peut être installée <em>sans</em> délai pour la
2290 Si vous êtes porteur et faites une mise à jour pour <em>unstable</em>, les
2291 instructions précédentes sont applicables à deux différences près. Tout
2292 d'abord, le temps d'attente raisonnable — délai entre le moment où vous
2293 envoyez un rapport au système de suivi des bogues et le moment où vous pouvez
2294 faire une mise à jour indépendante <em>(NMU)</em> — est de sept jours. Ce
2295 délai peut être raccourci si le problème est crucial et met l'effort de
2296 portage en difficulté : c'est à la discrétion de l'équipe de portage.
2297 (Souvenez-vous, il ne s'agit pas d'un règlement mais de recommandations
2298 communément acceptées).
2301 Deuxième différence, les porteurs qui font des mises à jour indépendantes
2302 sources doivent choisir une sévérité <em>sérieuse</em> (i.e.
2303 <em>serious</em>) ou supérieure quand ils envoient leur rapport au système de
2304 suivi des bogues. Ceci assure qu'un paquet source unique permet de produire un
2305 paquet binaire pour chaque architecture supportée au moment de la sortie de la
2306 distribution. Il est très important d'avoir un paquet source et un paquet
2307 binaire pour toutes les architectures pour être conforme à plusieurs licences.
2310 Les porteurs doivent éviter d'implémenter des contournements pour
2311 des bogues de l'environnement de compilation, du noyau ou de la libc. Quelques
2312 fois ces contournements sont inévitables. Si vous devez faire quelque chose de
2313 ce genre, marquez proprement vos
2314 modifications avec des <tt>#ifdef</tt> et documentez votre contournement pour
2315 que l'on sache le retirer une fois que le problème aura disparu.
2318 Les porteurs peuvent aussi avoir une adresse où ils publient le résultat de
2319 leur travail pendant le délai d'attente. Ainsi d'autres personnes peuvent
2320 bénéficier du travail du porteur même pendant ce délai. Bien sûr ces adresses
2321 n'ont rien d'officiel alors soyez sur vos gardes si vous les utilisez.
2326 <sect>Outils pour les porteurs
2329 Il y a plusieurs outils pour le travail de portage. Cette section contient
2330 une courte description de ces outils ; reportez-vous à la documentation de
2331 leurs paquets ou aux références citées ci-après pour une description complète.
2336 <sect1 id="quinn-diff">
2337 <heading><package>quinn-diff</package>
2340 <package>quinn-diff</package> est utilisé pour localiser les différences d'une
2341 architecture à l'autre. Il pourrait vous dire, par exemple, quels paquets de
2342 l'architecture <var>X</var> doivent être portés sur l'architecture <var>Y</var>.
2349 <heading><package>buildd</package>
2352 Le système <package>buildd</package> est un système distribué pour la
2353 compilation d'une distribution. Il est habituellement utilisé en conjonction
2354 avec des automates de compilation ; ce sont des machines « esclaves »
2355 qui récupèrent des paquets sources et tentent de les compiler. Il est aussi
2356 possible d'interagir par courrier électronique avec ce système. Cette
2357 interface est utilisée par les porteurs pour récupérer un paquet source (en
2358 général un paquet qui ne peut être compilé automatiquement) et travailler
2362 <package>buildd</package> n'est pas disponible sous forme de paquet ;
2363 pourtant, la plupart des équipes de porteurs l'utilisent aujourd'hui ou ont prévu
2364 de l'utiliser bientôt. Il regroupe un ensemble de composants très utiles,
2365 continuellement utilisés mais non encore mis en paquet, tels que
2366 <prgn>andrea</prgn>, <prgn>sbuild</prgn> et <prgn>wanna-build</prgn>.
2369 Une partie des informations produites par <package>buildd</package> — utiles
2370 pour les porteurs — est disponible sur la toile à l'adresse <url
2371 id="&url-buildd;">. Ces informations incluent les résultats produits toutes
2372 les nuits par <prgn>andrea</prgn> (dépendances des sources) et
2373 <prgn>quinn-diff</prgn> (paquets à recompiler). <p> Nous sommes très
2374 enthousiasmés par ce système car il a de nombreux usages potentiels. Des
2375 groupes de développeurs indépendants peuvent utiliser ce système pour créer
2376 différentes saveurs de la Debian — qui peuvent être ou ne pas être
2377 intéressantes pour tous (une version de Debian compilée avec des vérifications
2378 relatives à <prgn>gcc</prgn>). Ce système nous permettra aussi de recompiler
2379 rapidement toute une distribution.
2384 <sect1 id="dpkg-cross">
2385 <heading><package>dpkg-cross</package>
2388 <package>dpkg-cross</package> est un outil qui installe les bibliothèques et
2389 les entêtes nécessaires à une compilation croisée<footnote><em>cross-compilation</em>
2390 </footnote> d'une manière similaire à <package>dpkg</package>. De plus
2391 <prgn>dpkg-buildpackage</prgn> et <prgn>dpkg-shlibdeps</prgn> ont été
2392 améliorés pour supporter les compilations croisées.
2398 <chapt id="archive-manip">
2399 <heading>Déplacer, effacer, renommer, adopter et abandonner des
2403 Certaines manipulations de l'archive ne sont pas accessibles avec le processus
2404 de mise à jour automatisé. Elles sont appliquées manuellement par les
2405 développeurs. Ce chapitre décrit ce qu'il faut faire dans ces situations.
2410 <sect>Déplacer des paquets
2413 Parfois un paquet pourra changer de section. Une nouvelle version d'un paquet
2414 de la section <tt>non-free</tt> pourrait par exemple être distribuée sous
2415 licence LGP GNU ; dans ce cas le paquet doit être déplacé dans la section
2416 <tt>main</tt> ou <tt>contrib</tt><footnote> Reportez-vous au <url
2417 id="&url-debian-policy;" name="Debian Policy Manual"> pour savoir dans quelle
2418 section un paquet doit être classé.</footnote>.
2421 Si vous avez besoin de modifier la section de l'un de vos paquets, modifiez
2422 les informations de contrôle du paquet pour le placer dans la section désirée
2423 et téléchargez à nouveau votre paquet dans l'archive. Reportez-vous au
2424 <url id="&url-debian-policy;" name="Debian Policy Manual"> pour en savoir
2425 plus. Lisez attentivement le rapport d'installation qui vous sera envoyé lors
2426 de l'archivage de votre paquet. Si pour une raison ou une autre le paquet
2427 est toujours à son ancien emplacement, envoyez un rapport de bogue sur le
2428 pseudo-paquet <tt>ftp.debian.org</tt> demandant la suppression dudit paquet.
2429 Décrivez précisément vos manipulations car il pourrait s'agir d'un bogue dans
2430 le logiciel de gestion de l'archive.
2433 Si vous avez besoin de modifier la sous-section de l'un de vos paquets
2434 (<tt>devel</tt> ou <tt>admin</tt> par exemple) la procédure est légèrement
2435 différente. Modifiez la sous-section dans le fichier de contrôle de votre
2436 paquet et téléchargez-le. Il vous faudra ensuite demander la modification du
2437 fichier <em>override</em> comme décrit dans la section <ref
2438 id="override-file">.
2443 <sect id="removing-pkgs">Supprimer des paquets
2446 Si pour une raison ou une autre vous avez besoin de supprimer un paquet
2447 de l'archive (disons qu'il s'agit d'une vieille bibliothèque devenue inutile,
2448 que l'on conservait pour des raisons de compatibilité), il vous faudra
2449 envoyer un rapport de bogue concernant le pseudo-paquet
2450 <tt>ftp.debian.org</tt> et demandant sa suppression. N'oubliez pas de
2451 préciser de quelle distribution le paquet doit être supprimé.
2454 Si vous ne savez pas bien si un paquet peut être supprimé, demandez l'avis des
2455 autres développeurs sur la liste &email-debian-devel;. Le programme
2456 <prgn>apt-cache</prgn> du paquet <package>apt</package> pourra aussi vous être
2457 utile. La commande <tt>apt-cache showpkg <var>package</var> </tt> vous
2458 indiquera, entre autres, les paquets qui dépendent de <var>package </var>.
2460 <sect1>Supprimer des paquets dans <tt>Incoming</tt>
2462 Si vous décidez de supprimer un paquet de la section <tt>Incoming</tt>, il
2463 serait gentil de l'annoncer sur la liste de diffusion appropriée
2464 (&email-debian-changes; ou &email-debian-devel-changes;). Ce n'est pas
2469 <sect>Remplacer ou renommer un paquet
2472 Il peut vous arriver de vous tromper en nommant un paquet et avoir besoin de le
2473 renommer. Dans ce cas, vous devrez intervenir en deux étapes. D'abord,
2474 modifiez votre fichier <file>debian/control</file> pour que votre paquet
2475 renommé remplace et entre en conflit avec le nom de paquet que vous voulez
2476 remplacer. Reportez-vous au <url id="&url-debian-policy;" name="Debian Policy
2477 Manual"> pour les détails. Une fois que votre paquet est installé dans
2478 l'archive, faites un rapport de bogue concernant le pseudo-paquet
2479 <tt>ftp.debian.org</tt> et demandant la suppression du paquet mal nommé.
2480 l'archive, faites un rapport de bogue concernant le pseudo-paquet
2481 <tt>ftp.debian.org</tt> et demandant la suppression du paquet mal nommé.
2487 <sect id="orphaning">Abandonner un paquet
2490 Si vous ne pouvez plus maintenir un paquet, vous devez en informer les autres
2491 et faire le nécessaire pour qu'il soit marqué <em>abandonné</em>(i.e.
2492 <em>orphaned</em>). Vous devriez aussi remplacer votre nom par <tt>Debian QA
2493 Group &orphan-address;</tt> dans le champ
2494 <tt>maintainer</tt> du paquet et faire un rapport de bogue sur le
2495 pseudo-paquet <tt>wnpp</tt>. Le titre de votre rapport de bogue devra être
2496 « <tt>O<footnote><em>Orphaned</em> : abandonné.</footnote>:
2497 <var>paquet</var> — <var>courte description</var></tt> » pour indiquer
2498 que le paquet est orphelin. La sévérité du bogue sera <em>normale</em>.
2499 Si vous le jugez nécessaire, envoyez une copie à
2500 &email-debian-devel; en mettant cette adresse dans le champs X-Debbugs-CC: de
2501 l'entête du message. N'utilisez pas le champs CC: car de cette manière le
2502 sujet du message ne contiendrait pas le numéro du bogue.
2505 Si le paquet est particulièrement important pour la distribution il vous
2506 faudra faire un rapport de bogue sur le pseudo-paquet <tt>wnpp</tt>, titrer
2507 « <tt>RFA<footnote><em>Request For Adoption</em> : offre
2508 d'adoption.</footnote>: <var>paquet</var> — <var>courte
2509 description</var></tt> » et lui affecter la sévérité <em>importante</em>.
2510 Envoyez une copie de votre rapport de bogue à la liste debian-devel comme
2511 décrit précédemment.
2514 Reportez-vous à la page WNPP<footnote><em>Work-needing and prospective
2515 packages</em> : paquets en souffrance et paquets souhaités.</footnote> <url
2516 id="&url-wnpp;"> pour en savoir plus.
2522 <sect id="adopting">Adopter un paquet
2525 Une liste des paquets en attente de nouveau responsable est disponible à la
2526 page <url id="&url-wnpp;" name="Work-Needing and Prospective Packages">. Si
2527 vous voulez prendre en charge un paquet de cette liste reportez-vous à la page
2528 susmentionnée pour connaître la procédure à suivre.
2531 Prendre un paquet parce qu'il vous semble que celui-ci est négligé n'est pas
2532 correct — ce serait une prise d'otage. Vous pouvez prendre contact avec le
2533 responsable actuel et lui demander si vous pouvez prendre en charge ce paquet.
2534 Vous ne pouvez le faire sans son accord. Qu'il vous ignore n'est pas une
2535 raison suffisante pour le faire. Si vous avez le sentiment qu'un responsable
2536 est parti sans prévenir depuis un moment, demandez-le sur la liste
2537 &email-debian-private;.
2540 Si vous reprenez un vieux paquet, vous voudrez sûrement que le système de
2541 suivi des bogues indique que vous êtes le responsable du paquet. Cela se
2542 produira automatiquement une fois que vous aurez installé une nouvelle version
2543 du paquet dans l'archive avec le champ <tt>Maintainer</tt> à jour. Cela peut
2544 prendre quelques heures après le téléchargement. Si vous pensez ne pas avoir
2545 de mise à jour à faire pour un moment, envoyez un courrier électronique à
2546 &email-override; pour pouvoir recevoir les rapports de bogue.
2552 <chapt id="bug-handling">Gérer les bogues
2556 <sect>Superviser les rapports de bogues
2559 Si vous voulez être un bon responsable, vous devrez consulter régulièrement la
2560 page du <url id="&url-bts;" name="système de suivi des bogues">. Cette page
2561 contient tous les rapports de bogue qui concernent vos paquets.
2564 Les responsables interagissent avec le système de suivi des bogues en
2565 utilisant l'adresse électronique <tt>bugs.debian.org</tt>. Vous trouverez une
2566 documentation sur les commandes disponibles à l'adresse <url id="&url-bts;">
2567 ou, si vous avez installé le paquet <package>doc-debian</package>, dans les
2568 fichiers locaux <file>/usr/share/doc/debian/bug-*</file>.
2571 Certains trouvent utile de recevoir régulièrement une synthèse des rapports de
2572 bogues ouverts. Si vous voulez recevoir une synthèse hebdomadaire relevant
2573 tous les rapports de bogue ouverts pour vos paquets, vous pouvez configurer
2574 <prgn>cron</prgn> comme suit :
2578 # Synthèse hebdomadaire des rapports de bogue qui me concernent
2579 0 17 * * fri echo "index maint <var>adresse</var>" | mail request@bugs.debian.org
2583 Remplacez <var>adresse</var> par votre adresse officielle de responsable
2589 <sect id="submit-bug">Ouvrir un rapport de bogue
2592 En tant que responsable Debian, vous trouvez des bogues dans d'autres paquets
2593 En tant que responsable Debian, vous trouvez des bogues dans d'autres paquets,
2594 ou bien vous voulez réassigner à d'autres paquets des rapports de bogue
2595 concernant vos paquets. La page d'aide du <url id="&url-bts-control;"
2596 name="système de suivi des bogues"> vous explique comment procéder.
2599 Nous vous encourageons à ouvrir des rapports de bogue s'il y a des problèmes.
2600 Essayez de soumettre ces rapports depuis un compte utilisateur où vous pouvez
2601 recevoir du courrier. Ne les envoyez pas en tant que <em>root</em>.
2604 Vérifiez que le bogue n'a pas encore été déclaré. Essayez de faire un travail
2605 propre en déclarant le bogue et en l'envoyant à la bonne adresse.
2608 Pour faire encore mieux, vous pouvez consulter d'autres paquets, grouper les
2609 bogues qui ont été rapportés plusieurs fois ou affecter la sévérité
2610 <em>corrigé</em> (i.e. <em>fixed</em>) à un rapport dont le bogue a été
2611 corrigé. Attention, quand vous n'êtes ni le rapporteur d'un bogue ni le
2612 responsable du paquet vous ne devez pas clore le rapport (à moins que vous
2613 n'ayez l'autorisation du responsable).
2618 <sect>Répondre à des rapports de bogues
2621 Assurez-vous que toutes vos discussions concernant les bogues sont envoyées au
2622 rapporteur du bogue et au bogue lui-même (<email>123@bugs.debian.org</email>
2626 Vous ne devez <em>jamais</em> fermer un rapport de bogue en envoyant la
2627 commande <em>close</em> à l'adresse :
2630 <tt> &email-bts-control;</tt>
2633 Si vous le faites, le rapporteur n'aura aucun retour sur la clôture de son
2639 <sect id="upload-bugfix">Quand les rapports sont fermés par une
2643 Si vous corrigez un bogue dans vos paquets, il est de votre responsabilité de
2644 fermer le rapport de bogue associé. Pourtant vous ne devez pas le fermer avant
2645 que le paquet n'ait été accepté dans l'archive Debian. C'est pourquoi, vous
2646 pouvez et vous devez clore le rapport dans le système de suivi des bogues une
2647 fois que vous avez reçu l'avis indiquant que votre nouveau paquet a été
2648 installé dans l'archive.
2651 Si vous utilisez une version récente de <package>dpkg-dev</package> et que
2652 vous remplissez convenablement le fichier <file>changelog</file>, le logiciel de
2653 maintenance de l'archive fermera les rapports de bogue automatiquement. Tout ce
2654 que vous avez à faire est de respecter la syntaxe suivante dans votre fichier
2655 <file>debian/changelog</file> :
2657 acme-cannon (3.1415) unstable; urgency=low
2659 * Frobbed with options (closes: Bug#98339)
2660 * Added safety to prevent operator dismemberment, closes: bug#98765,
2662 * Added manpage. Closes: #98725.
2665 Techniquement parlant, l'expression régulière suivante est utilisée :
2667 /closes:\s*(?:bug)?\#\s*\d+(?:,\s*(?:bug)?\#\s*\d+)*/ig
2670 L'auteur préfère la syntaxe <tt>(closes: Bug#<var>XXX</var>)</tt>, car elle
2671 est facilement repérable dans le fichier <file>changelog</file>.
2674 Si vous voulez fermer un rapport de bogue manuellement — à l'ancienne — il
2675 suffit d'envoyer le fichier <tt>.changes</tt> à l'adresse
2676 <email>XXX-done@bugs.debian.org</email> où <var>XXX</var> est le numéro du
2682 <sect id="lintian-reports">Les rapports Lintian
2685 Vous devriez récupérer la dernière version de <package>lintian</package>
2686 depuis <em>unstable</em> régulièrement et vérifier tous vos paquets. Vous
2687 pouvez aussi chercher votre adresse électronique dans la page de <url
2688 id="&url-lintian;" name="rapport lintian">. Cette page, mise à jour
2689 automatiquement, contient les rapports lintian concernant la
2690 dernière version de la distribution (en général <em>unstable</em>) générés
2691 avec la dernière version de <package>lintian</package>.
2697 <sect>Ouvrir un grand nombre de rapports d'un seul coup
2700 Ouvrir un grand nombre de rapports pour le même problème sur un grand nombre de
2701 paquet — plus de dix — est une pratique que nous déconseillons. Prenez
2702 toutes les mesures possibles pour éviter cette situation. Si le problème peut
2703 être détecté automatiquement par exemple, ajoutez un nouveau test dans le
2704 paquet <package>lintian</package> pour générer une erreur ou un avertissement.
2707 Si vous ouvrez plus de dix rapports sur le même sujet, il est préférable
2708 d'indiquer votre intention sur la liste &email-debian-devel;. Cela donnera à
2709 d'autres développeurs la possibilité de vérifier que le problème existe
2710 vraiment. De plus, cela permet d'éviter que plusieurs responsables ne rédigent
2711 les mêmes rapports de bogue simultanément.
2714 Quand vous envoyez un grand nombre de rapports sur le même sujet, vous devriez
2715 les envoyer à <email>maintonly@bugs.debian.org</email> pour qu'ils ne soient
2716 pas redirigés vers les listes de diffusions.
2722 <chapt id="newmaint">
2723 <heading>Interaction avec les nouveaux responsables</heading>
2726 Ce chapitre décrit les procédures que doivent suivre les responsables
2727 Debian quand ils ont affaire à un futur responsable Debian.
2729 <sect>Parrainer un paquet
2731 Parrainer un paquet signifie télécharger un paquet dans l'archive Debian pour
2732 un responsable qui n'est pas capable de le faire lui même : un futur
2733 responsable. Parrainer un paquet signifie aussi assumer la résponsabilité de
2737 Les nouveaux responsables éprouvent souvent quelques difficultés pour créer
2738 des paquets Debian — ce qui est bien compréhensible. C'est là que le parrain
2739 intervient. Il doit verifier que le paquet est suffisamment bon pour intégrer
2740 la distribution. Notez que si le paquet est nouveau les administrateurs FTP
2741 devront eux aussi inspecter ce paquet avant de le laisser entrer.
2744 Parrainer un paquet en se contentant de recompiler le paquet ou de signer le
2745 téléchargement <strong>n'est franchement pas recommandé</strong>. Vous devez
2746 reconstruire le paquet source comme vous le feriez avec vos propres paquets.
2747 N'oubliez pas qu'il sera possible de voir que vous avez téléchargé un paquet
2748 même si vous avez laissé le nom du futur responsable dans les fichiers de
2749 contrôle et changelog.
2752 Si vous êtes responsable de candidature<footnote>Application
2753 manager</footnote> pour un developpeur, vous pouvez aussi être son parrain. De
2754 cette manière, vous aurez la possibilité de vérifier vous même comment ce
2755 candidat accomplit la partie `Tâches et compétences'<footnote>`Tasks and
2756 Skills'</footnote> de sa candidature.
2760 <sect>Soutenir un nouveau responsable
2763 Consultez la page <url id="&url-newmaint-advocate;" name="Soutenir un futur
2764 responsable"> sur le site du projet Debian.
2768 <sect>Suivre la candidature d'un nouveau responsable
2771 Consultez la page <url id="&url-newmaint-amchecklist;" name="Aide mémoire du
2772 responsable de candidature"> sur le site du projet Debian.
2779 <chapt id="tools">Aperçu des outils du responsable Debian
2782 Cette section contient un aperçu rapide des outils dont dispose le responsable.
2783 Ces outils sont faits pour améliorer le confort des responsables et pour
2784 libérer leur temps pour des tâches cruciales.
2787 Certaines personnes préfèrent utiliser des outils de haut niveau, d'autres pas.
2788 Debian n'a pas de position officielle sur la
2789 question ; tout outil conviendra du moment qu'il fait le boulot. C'est pourquoi
2790 cette section n'a pas été conçue pour indiquer à chacun
2791 quel outil il devrait utiliser ou comment il devrait faire pour gérer sa
2792 charge de responsable Debian. Elle n'est pas non plus destinée à
2793 favoriser l'usage d'un outil aux dépens d'un autre.
2796 La plupart des descriptions de ces outils proviennent des descriptions de
2797 leurs paquets. Vous trouverez plus d'information dans les
2798 documentations de ces paquets.
2802 <sect id="dpkg-dev">
2803 <heading><package>dpkg-dev</package>
2806 Le paquet <package>dpkg-dev</package> contient les outils (y compris
2807 <prgn>dpkg-source</prgn>) nécessaires pour déballer, fabriquer et livrer des
2808 paquets Debian source. Ces utilitaires fournissent les fonctionnalités de bas
2809 niveau indispensables pour créer et manipuler les paquets ; en tant que tels,
2810 ils sont indispensables à tout responsable Debian.
2816 <heading><package>lintian</package>
2819 <package>lintian</package> dissèque les paquets pour y repérer des bogues et
2820 des manquements aux règles de développement. Il contient des tests automatisés pour
2821 vérifier de nombreuses règles et quelques erreurs courantes. L'utilisation de
2822 <package>lintian</package> a déjà été discutée dans <ref id="upload-checking">
2823 et <ref id="lintian-reports">.
2826 <heading><package>debconf</package></heading>
2829 Le paquet <package>debconf</package> fournit une interface consistante pour
2830 configurer les paquets interactivement. Il est indépendant de l'interface et
2831 permet une configuration en mode texte, par une interface HTML ou par boîtes
2832 de dialogues. D'autres types d'interface peuvent être ajoutés sous forme
2836 Beaucoup pensent que ce système devrait être utilisé pour tout paquet
2837 nécessitant une configuration interactive. <package>debconf</package> n'est
2838 pas requis par le <em>Debian Policy Manual</em> pour le moment ; cela
2839 pourra changer dans le futur.
2842 <sect id="debhelper">
2843 <heading><package>debhelper</package>
2846 Le paquet <package>debhelper</package> regroupe un ensemble de programmes qui
2847 peuvent être utilisés dans <file>debian/rules</file> pour automatiser les
2848 tâches courantes relatives à la fabrication des paquets Debian binaires. Ce
2849 paquet contient des utilitaires pour installer différents fichiers, les
2850 compresser, ajuster leurs droits et intégrer votre paquet dans le
2851 système de menu Debian.
2854 Au contraire de <package>debmake</package>, <package>debhelper</package> est
2855 divisé en plusieurs petits utilitaires qui agissent de manière cohérente.
2856 Ce découpage permet un contrôle des opérations plus fin que
2857 <package>debmake</package>.
2863 <heading><package>debmake</package>
2866 <package>debmake</package> — un précurseur de <package>debhelper</package> —
2867 est un assistant moins modulaire pour manipuler le fichier
2868 <file>debian/rules</file>. Il inclut deux programmes principaux :
2869 <prgn>deb-make</prgn>, utile au développeur Debian pour convertir un paquet
2870 source normal (non-Debian) en paquet source Debian, et <prgn>debstd</prgn> qui
2871 regroupe le type de fonction que l'on trouve dans
2872 <package>debhelper</package>.
2875 Le consensus actuel est que l'usage de <package>debmake</package> est
2876 déconseillé au profit de <package>debhelper</package> mais ce n'est pas une
2877 erreur d'utiliser <package>debmake</package>.
2882 <heading><package>yada</package>
2885 Le paquet <package>yada</package> est un nouvel assistant pour la création de
2886 paquets qui a une approche légèrement différente. Il utilise un fichier
2887 <file>debian/packages</file> pour générer d'autres fichiers nécessaires dans
2888 le sous-répertoire <file>debian/</file>.
2891 Remarque : <package>yada</package> est encore jeune et probablement moins
2892 robuste que ses aînés.
2897 <heading><package>equivs</package>
2900 <package>equivs</package> est un autre paquet pour faire des paquets. Il est
2901 souvent conseillé pour un usage local, si vous avez besoin de faire un paquet
2902 pour satisfaire des dépendances. Il est aussi parfois utilisé pour faire des
2903 « méta-paquets » qui sont des paquets dont l'unique objet est de
2904 dépendre d'autres paquets.
2908 <sect id="cvs-buildpackage">
2909 <heading><package>cvs-buildpackage</package>
2912 Le paquet <package>cvs-buildpackage</package> permet de mettre à jour ou
2913 récupérer des paquets sources dans un référentiel CVS, il permet de fabriquer
2914 un paquet Debian depuis le référentiel CVS et il assiste le développeur lors
2915 de l'intégration de modifications amont dans le référentiel.
2918 Ce paquet fournit l'infrastructure facilitant l'utilisation de CVS
2919 pour le responsable. Il permet de conserver des branches CVS distinctes
2920 pour les distributions <em>stable</em>, <em>unstable</em> et probablement
2921 <em>experimental</em>.
2925 <heading><package>dupload</package>
2928 Le paquet <package>dupload</package> contient un script du même nom pour
2929 mettre à jour des paquets dans l'archive Debian, tracer ces mises à jour et
2930 les annoncer par courrier électronique automatiquement. Vous pouvez le
2931 configurer pour faire des mises à jour à d'autres endroits et avec d'autres
2935 Note : l'annonce d'une mise à jour est maintenant prise en charge par le logiciel
2936 de gestion de l'archive. <package>dupload</package> doit être configuré
2937 pour ne plus envoyer de courrier (voir <ref id="upload-announce">).
2939 <sect id="fakeroot">
2940 <heading><package>fakeroot</package>
2943 <package>fakeroot</package> simule les privilèges <em>root</em>. Cela permet
2944 de fabriquer un paquet sans être root (en général les paquets installent des
2945 fichiers appartenant à <em>root</em>). Si vous avez installé
2946 <package>fakeroot</package> vous pouvez par exemple écrire
2947 <tt>dpkg-buildpackage -rfakeroot</tt> en tant qu'utilisateur.
2951 <sect id="devscripts">
2952 <heading><package>devscripts</package>
2955 Le paquet <package>devscripts</package> contient quelques scripts et outils
2956 que vous trouverez peut-être utiles pour maintenir vos paquets Debian. Parmi
2957 ces scripts, vous trouverez <prgn>debchange</prgn> qui manipule votre fichier
2958 <file>debian/changelog</file> depuis la ligne de commande et
2959 <prgn>debuild</prgn> qui est construit au-dessus de
2960 <prgn>dpkg-buildpackage</prgn>.
2966 <heading><package>debget</package>
2969 Le paquet <package>debget</package> contient un script qui peut être utile
2970 pour télécharger des paquets depuis l'archive Debian. Vous pouvez par exemple
2971 l'utiliser pour télécharger des paquets sources.
2984 <!-- Keep this comment at the end of the file
2989 sgml-minimize-attributes:nil
2990 sgml-always-quote-attributes:t
2992 sgml-indent-data:nil
2993 sgml-parent-document:nil
2994 sgml-exposed-tags:nil
2995 sgml-declaration:nil
2996 sgml-local-catalogs:nil
2997 sgml-local-ecat-files:nil
3000 <!-- vim:set tw=78:ts=8: -->