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.16 $">
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 gravité <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 remettant en cause la distribution (cf. <em>Release critical bug</em>)
181 n'a été découvert. Cette distribution n'a pas été testée
182 en profondeur. Elle est cependant sensée être plus stable que
183 <em>unstable</em> (<ref id="life-cycle">).
185 <item><em>Frozen</em> : Nom de la distribution gelée. Cette
186 distribution apparaît pendant quelques mois avant la sortie d'une
187 nouvelle distribution stable. Elle est destinée à être testée en
188 profondeur et ne reçoit que des corrections de bogues (<ref
191 <item><em>Stable</em> : Nom de la distribution dite stable. Cette
192 distribution a été testée, validée et diffusée (<ref
195 <item><em>Debian maintainer</em> : responsable Debian, développeur
196 Debian (parfois mainteneur). Personne qui fait officiellement
197 partie du projet Debian. Elle a accès aux serveurs Debian et participe
198 au développement — au sens large — de la distribution (<ref
199 id="developer-duties">). La plupart des responsables font de la mise
200 en paquet mais il existe d'autres activités telles que documentation,
201 site web, création des cédéroms, administration des serveurs...
203 <item><em>Upstream version</em> : version amont. Il s'agit du
204 logiciel tel qu'il est fournit par le responsable amont — par
205 opposition à la version fournie par la distribution Debian. (Voir
206 <ref id="upstream-coordination">.)
208 <item><em>Upstream maintainer</em> : responsable amont ou développeur
209 amont. Personne(s) responsable(s) du développement ou de la
210 maintenance d'un logiciel. En général le responsable amont n'a rien à
211 voir avec le projet Debian (<ref id="upstream-coordination">).
213 <item><em>Debian keyring</em> : porte-clés Debian. Le porte-clés
214 Debian contient les clés publiques de tous les responsables Debian (<ref
217 <item><em>Work-needing and prospective packages (WNPP)</em> : paquets en
218 souffrance et paquets souhaités. La liste des paquets en
219 souffrance indique les paquets qui n'ont plus de responsable. La liste
220 des paquets souhaités indique les logiciels que des utilisateurs
221 aimeraient bien voir dans la distribution (<ref id="upload">).
226 <chapt id="new-maintainer">Devenir responsable Debian
232 Vous avez lu toute la documentation, vous comprenez l'intérêt de tout ce qui
233 se trouve dans le paquet exemple <package>hello</package> et vous vous
234 apprêtez à mettre en paquet votre logiciel préféré. Comment devenir
235 responsable Debian et intégrer votre travail au projet ?
238 Si vous ne l'avez pas encore fait vous pouvez commencer par vous inscrire à la
239 liste &email-debian-devel;.
242 Pour cela, envoyez un courrier à l'adresse
243 &email-debian-devel-req; avec le mot <tt>subscribe</tt> dans la ligne
244 <em>Objet</em><footnote><em>Subject</em> en anglais</footnote> de votre
245 message. En cas de problème, contactez l'administrateur de la liste
246 &email-listmaster;. Vous trouverez plus d'information dans la section <ref
250 Vous suivrez les discussions de cette liste (sans poster) pendant quelques
251 temps avant de coder quoi que ce soit et vous informerez la liste de votre
252 intention de travailler sur quelque chose pour éviter de dupliquer le travail
256 Une autre liste intéressante est &email-debian-mentors;. Voir la section <ref
257 id="mentors"> pour les détails. Le canal IRC <tt>#debian</tt> sur le réseau
258 <em>Linux People IRC</em> (c.-à-d. <tt>irc.debian.org</tt>) pourra aussi être
264 <sect id="registering">Devenir responsable Debian
267 Avant de décider de devenir responsable Debian, il vous faudra lire le <url
268 id="&url-social-contract;" name="Contrat social Debian">. Vous faire
269 enregistrer comme responsable implique que vous adhériez à ce contrat social
270 et que vous vous engagiez à le soutenir ; il est très important que les
271 responsables soient en accord avec les principes fondamentaux qui animent le
272 projet Debian GNU-Linux. Lire le <url id="&url-gnu-manifesto;" name="Manifeste
273 GNU"> est aussi une bonne idée.
276 Le processus d'enregistrement a pour but de vérifier votre identité et vos
277 intentions. Le nombre de personnes travaillant pour Debian GNU-Linux a atteint
278 &number-of-maintainers; et notre système est utilisé dans un certain nombre
279 d'endroits très importants : nous devons rester attentifs pour éviter un acte
280 malveillant. C'est pourquoi nous contrôlons les nouveaux responsables avant de
281 leur donner un compte sur nos serveurs et les autoriser à ajouter des paquets
285 Pour votre enregistrement il sera nécessaire d'envoyer les informations
286 suivantes<footnote>Voir la page <url id="&url-newmaint-checklist;"
287 name="Checklist for applicants">.</footnote> après une
288 première prise de contact à l'adresse &email-new-maintainer; :
295 Le <em>login</em> que vous voudriez avoir sur <tt>master</tt> (maximum
296 huit caractères) ainsi que l'adresse qui sera utilisée pour votre
297 inscription à la liste &email-debian-private; (il s'agira soit de
298 votre adresse personnelle soit de votre adresse <tt>debian.org</tt>
299 fraîchement acquise).
302 Un numéro de téléphone où nous pouvons vous joindre. Souvenez-vous que
303 l'équipe <em>New maintainer</em> appelle généralement le soir pour
304 limiter les coûts de communication longue distance. Ne donnez pas de
305 numéro professionnel à moins d'y être souvent le soir.
308 Une déclaration de vos intentions. C'est à dire, sur quel paquet vous
309 pensez travailler, à quel portage vous comptez participer ou comment
310 vous comptez contribuer au projet.
313 Une déclaration indiquant que vous avez lu et acceptez de soutenir le
314 <url id="&url-social-contract;" name="Contrat social Debian">.
317 Un moyen de vérifier votre identité réelle. Les moyens suivants feront
322 une clé OpenPGP signée par une signature connue telle qu'un
323 responsable Debian que vous aurez rencontré
324 <em>physiquement</em> ou un service d'authentification qui
325 vérifie votre identité (Verisign par exemple)<footnote>Un
326 service d'authentification qui vérifie votre adresse
327 électronique mais pas votre identité ne conviendra pas.
331 une copie (numérisée ou photocopiée) de n'importe quel
332 document officiel prouvant votre identité (certificat de
333 naissance, carte d'identité, permis de conduire, etc...). Pour
334 un envoi électronique, signez avec votre clé OpenPGP.
340 Si vous n'avez pas de clé OpenPGP, créez-la. Tout responsable a besoin d'une
341 clé OpenPGP pour signer et vérifier les mises à jour de paquets. Vous lirez
342 la documentation du logiciel de cryptographie que vous utiliserez car elle
343 contient des informations indispensables pour la sécurité de votre clé. Les
344 défaillances de sécurité sont bien plus souvent dues à des erreurs humaines
345 qu'à des problèmes logiciels ou à des techniques d'espionnage avancées. Voir
346 <ref id="key-maint"> pour plus d'information sur la gestion de votre clé
350 Debian utilise <prgn>GNU Privacy Guard</prgn> (paquet <package>gnupg</package>
351 version 1 ou supérieure comme standard de base). Vous pouvez aussi utiliser une
352 autre implémentation d'OpenPGP. OpenPGP est un standard ouvert basé sur la
353 <url id="&url-rfc2440;" name="RFC 2440">.
356 L'algorithme à clé publique recommandé pour les développements Debian est DSA
357 (parfois appelé « DSS » ou « DH\ElGamal »). Vous pouvez
358 aussi utiliser d'autres types de clés. La longueur de votre clé doit être au
359 minimum de 1024 bits ; il n'y a pas de raison d'utiliser une clé plus courte et le
360 faire serait beaucoup moins sûr. Votre clé doit être signée avec votre propre
361 identifiant ; cela évite les falsifications. <prgn>GNU Privacy Guard</prgn> le
362 fait automatiquement.
365 Souvenez-vous que l'un des noms de votre clé doit correspondre à l'adresse de
366 mainteneur officiel que vous indiquez dans vos paquets. Par exemple, j'affecte
367 le responsable du paquet <package>developers-reference</package> à « Adam
368 Di Carlo <aph@debian.org> » ; alors l'un des identifiants de ma clé
369 doit être cette même valeur « Adam Di Carlo
370 <aph@debian.org> ».
373 Si votre clé publique n'est pas sur un serveur public tel que &pgp-keyserv;,
374 reportez-vous à la documentation disponible localement dans &file-keyservs;.
375 Cette documentation explique comment mettre votre clé publique sur un serveur.
376 L'équipe <em>New maintainer</em> mettra votre clé publique sur les serveurs de
377 clés si elle n'y est pas déjà.
380 Pour cause de restriction sur le droit à l'exportation aux États-Unis,
381 certains paquets, dont <package>gnupg</package>, sont hébergés sur
382 des serveurs FTP en dehors des États-Unis. Vous trouverez les adresses
383 de ces serveurs dans le fichier <url id="&url-readme-non-us;">.
386 Certains pays limitent l'usage des logiciels de cryptographie. Cela ne
387 devrait cependant pas avoir d'impact sur l'activité d'un responsable de paquet
388 car il peut être tout à fait légal d'utiliser des logiciels de cryptographie
389 pour l'authentification plutôt que pour le cryptage (comme c'est le cas en
390 France). Le projet Debian ne nécessite en aucune manière de cryptographie en
391 tant que cryptage. Si vous vivez dans un pays où l'usage de la cryptographie
392 pour authentification est interdit, contactez-nous pour que nous prenions des
393 dispositions particulières.
396 Une fois que votre dossier est prêt et que votre clé publique est accessible sur
397 les serveurs de clés publiques, envoyez votre candidature sur la liste
398 &email-new-maintainer; pour être enregistré comme responsable Debian et
399 pouvoir ajouter vos paquets dans l'archive. Ce message doit contenir votre nom
400 et votre adresse électronique. Toutes les informations présentées plus tôt
401 seront requises une fois que votre responsable de canditature aura été
402 désigné. Le responsable de candidature<footnote>Application manager</footnote> est votre accompagnateur dans le
403 processus d'enregistrement et vous pouvez toujours lui demander où en est
404 votre candidature. Vous pouvez aussi consulter le <url id="&url-newmaint-db;"
405 name="tableau de bord des candidatures"> sur le site Debian.
408 Pour en savoir plus, consultez le <url id="&url-newmaint;" name="coin des
409 nouveaux responsables"> sur le site Debian.
412 Une fois que votre dossier aura été reçu et traité, vous devriez
413 recevoir les informations concernant votre compte Debian. Si vous
414 ne recevez rien pendant un mois, envoyez un message de relance demandant si
415 votre candidature initiale a bien été reçue. Ne renvoyez <em>pas</em> votre
416 candidature initiale, cela embrouillerait l'équipe <em>New maintainer</em>.
417 Soyez patient, en particulier à l'approche de la sortie d'une
418 distribution ; des erreurs ont parfois lieu et les gens peuvent manquer
419 de temps pour cette activité bénévole.
422 <sect id="mentors">Mentors Debian
424 La liste de diffusion &email-debian-mentors; a été créée pour les
425 responsables débutants qui cherchent de l'aide pour leur première
426 création de paquet ainsi que pour des problèmes spécifiques aux
427 développeurs. Tout responsable débutant est invité à s'y inscrire
428 (voir <ref id="mailing-lists"> pour plus de détails).
431 Ceux qui préfèrent une aide personnalisée (via une correspondance
432 privée) doivent aussi poster dans cette liste, un développeur
433 expérimenté se portera volontaire pour les aider.
440 <chapt id="developer-duties">Les charges du responsable Debian
443 <sect>Mise à jour de vos références Debian
446 Une base de données LDAP contient de nombreuses informations concernant
447 les développeurs, vous pouvez y accéder à l'adresse <url
448 id="&url-debian-db;">. Vous pouvez modifier votre mot de passe (ce mot de
449 passe est diffusé sur la plupart des machines auxquelles vous avez accès),
450 votre adresse, votre pays, la latitude et la longitude de l'endroit où vous
451 résidez, vos numéros de téléphone et de fax, votre interpréteur de commande
452 préféré, votre surnom IRC, votre page web, votre adresse de courrier
453 électronique ainsi que l'alias que vous utilisez pour votre courrier
454 électronique chez debian.org. La plupart de ces informations ne sont pas
455 accessibles au public. Pour plus de détails au sujet de cette base de données
456 reportez-vous à sa documentation en ligne disponible à l'adresse <url
457 id="&url-debian-db-doc;">.
460 Vous y tiendrez à jour les informations vous concernant.
465 <sect id="key-maint">Gérer votre clé publique
468 Soyez très vigilant en utilisant votre clé privée. Ne la placez pas sur un
469 serveur public ou sur des machines multi-utilisateurs telles que
470 <tt>master.debian.org</tt>. Sauvegardez vos clés et gardez-en une copie hors
471 connexion. Lisez la documentation fournie avec votre logiciel et la <url
472 id="&url-pgp-faq;" name="FAQ PGP">.
475 Si vous ajoutez des signatures ou des identifiants à votre clé publique, vous
476 pouvez mettre à jour le porte-clés Debian en envoyant votre clé publique à
477 <tt>&keyserver-host;</tt>. Si vous voulez ajouter ou supprimer une clé, envoyez
478 un courrier à &email-debian-keyring;. Les procédures d'extraction de clé
479 décrites dans <ref id="registering"> s'appliquent ici.
482 Vous pouvez trouver une présentation approfondie de la gestion de clé Debian
483 dans la documentation du paquet <package>debian-keyring</package>.
488 <sect id="inform-vacation">Prendre des vacances courtoisement
491 La plupart des développeurs prennent des vacances ; généralement, cela signifie
492 qu'ils ne peuvent ni travailler pour Debian ni être joints par
493 courrier électronique si un problème se présentait. Les autres développeurs
494 ont besoin de savoir que vous êtes en vacances ; ainsi ils sauront comment
495 réagir en cas de problème. En général, cela signifie que les autres
496 développeurs sont autorisés à modifier votre paquet (voir <ref id="nmu">) en
497 cas de gros problème (bogues bloquants pour la distribution, mise à jour de
498 sécurité...) durant vos vacances.
501 Il y a deux choses à faire pour informer les autres développeurs.
502 Premièrement, envoyer un courrier électronique indiquant vos dates de vacances
503 à &email-debian-private;, vous pouvez aussi donner quelques instructions pour
504 indiquer comment agir si un problème survenait. Deuxièmement, il faut mettre
505 à jour la base de données Debian LDAP et vous signaler « en
506 vacances » (l'accès à cette information est réservé aux développeurs).
507 N'oubliez pas de retirer votre indicateur « en vacances » lorsque
508 celles-ci sont terminées.
513 <sect id="upstream-coordination">Coordination avec les développeurs
517 Une grosse part de votre travail de responsable Debian sera de rester en
518 contact avec les développeurs amonts. Parfois, les utilisateurs établissent
519 des rapports de bogue qui ne sont pas spécifiques à Debian. Vous devez
520 transmettre ces rapports de bogue aux développeurs amonts pour qu'ils soient
521 corrigés dans les prochaines versions. Il n'est pas de votre responsabilité
522 de corriger les bogues qui ne sont pas spécifiques à Debian. Toutefois,
523 si vous êtes capable de le faire, nous vous encourageons à contribuer au
524 développement amont en proposant un <em>patch</em> qui corrige ce bogue.
525 Les utilisateurs et responsables Debian proposent souvent des <em>patches</em>
526 pour corriger des bogues amonts, il vous faudra alors évaluer ce
527 <em>patch</em> puis le transmettre aux développeurs amonts.
530 Si vous avez besoin de modifier les sources d'un logiciel pour fabriquer un
531 paquet conforme à la charte Debian, alors vous devriez proposer un
532 <em>patch</em> aux développeurs amonts pour qu'il soit inclus dans leur
533 version. Ainsi, vous n'aurez plus besoin de modifier les sources lors des
534 mises à jour amonts suivantes. Quels que soient les changements dont vous
535 avez besoin, il faut toujours essayer de rester dans la lignée des sources
542 <sect id="rc-bug">Gestion des bogues bloquants pour la distribution
545 Les bogues bloquants pour la distribution<footnote>Traduction de l'anglais
546 <em>Release critical bug (RCB)</em></footnote> sont les bogues de gravité
547 <em>critique</em>, <em>grave</em> et <em>sérieuse</em><footnote>Respectivement
548 <em>critical</em>, <em>grave</em> et <em>serious</em> en anglais</footnote>.
549 Ces bogues peuvent retarder la diffusion d'une distribution Debian et/ou
550 peuvent justifier la suppression d'un paquet d'une distribution gelée. C'est
551 pourquoi ces bogues ont besoin d'être corrigés au plus vite. Vous devez être
552 conscient que certains développeurs faisant partie de l'équipe d'<url
553 id="&url-debian-qa;" name ="assurance qualité Debian"> surveillent ces bogues
554 et essaient de vous aider chaque fois qu'ils le peuvent. Si vous ne pouvez pas
555 corriger un bogue de ce type dans les deux semaines, vous devriez soit
556 demander de l'aide en envoyant un courrier à l'équipe d'assurance qualité
557 (<em>QA group</em> &email-debian-qa;), soit expliquer vos difficultés et
558 présenter un plan pour corriger le problème en répondant au rapport de bogue
559 concerné. Si rien n'est fait, des personnes de l'équipe d'assurance qualité
560 pourraient chercher à corriger votre paquet (voir <ref id="nmu">) après avoir
561 tenté de vous contacter. Ils pourraient attendre moins longtemps que
562 d'habitude pour faire leur mise à jour s'il n'y a pas trace d'activité récente
563 de votre part dans le système de suivi des bogues.
567 <sect id="qa-effort">L'effort d'assurance qualité
570 Même s'il y a un groupe de personnes dédié à l'assurance qualité, cette
571 activité ne leur est pas réservée. Vous pouvez participer à cet effort en
572 éliminant, autant que faire se peut, tout bogue de vos paquets et en observant
573 les remarques émises par <prgn>lintian</prgn> (voir <ref id="lintian-reports">). Si cela
574 ne vous semble pas possible, il faudrait songer à abandonner certains
575 de vos paquets (voir <ref id="orphaning">). Vous pouvez aussi
576 demander l'aide d'autres personnes pour rattraper votre retard dans la liste
577 des bogues (vous pouvez demander de l'aide sur les listes &email-debian-qa;
578 et &email-debian-devel;).
581 <sect>Démissionner courtoisement
583 Si vous choisissez de quitter le projet Debian, procédez comme suit :
587 Abandonnez tous vos paquets comme décrit dans <ref id="orphaning">.
590 Envoyez un courrier électronique à &email-debian-private; indiquant
591 comment vous quittez le projet.
594 Signalez aux responsables du porte-clés Debian que vous quittez le
595 projet en écrivant à &email-debian-keyring;.
603 <chapt id="servers">Listes de diffusion, serveurs et autres machines
606 Dans ce chapitre vous trouverez une très brève description des listes de
607 diffusion Debian, des principaux serveurs Debian et des autres machines
608 auxquelles vous aurez accès en tant que développeur.
612 <sect id="mailing-lists">Les listes de diffusion
615 Le serveur de liste de diffusion est <tt>&lists-host;</tt>. Envoyez un
616 courrier électronique à <tt>debian-<var>foo</var>-REQUEST@&lists-host;</tt>,
617 où <tt>debian-<var>foo</var></tt> est le nom de la liste, avec le mot
618 <tt>subscribe</tt> dans le champ <em>Objet</em><footnote><em>Subject</em> en
619 anglais</footnote> pour vous abonner à la liste ou <tt>unsubscribe</tt> pour
620 vous désabonner. Vous trouverez des instructions plus détaillées pour vous
621 abonner et vous désabonner aux adresses <url
622 id="&url-debian-lists-subscribe;">, <url id="&url-debian-lists;"> ou
623 localement dans le fichier &file-mail-lists; si vous avez installé le paquet
624 <package>doc-debian</package>.
627 Lorsque vous répondez aux messages d'une liste de diffusion,
628 n'envoyez pas de copie (<tt>CC</tt>) à l'auteur du courrier à moins
629 qu'il ne l'ait demandé explicitement. Quelqu'un qui envoie un message à une
630 liste de diffusion se doit d'y lire les réponses.
633 Les principales listes de diffusion Debian sont :
635 <item> &email-debian-devel;,
636 <item> &email-debian-policy;,
637 <item> &email-debian-user;,
638 <item> &email-debian-private;,
639 <item> &email-debian-announce; et
640 <item> &email-debian-devel-announce;.
643 Un développeur devrait, au minimum, être inscrit aux listes
644 &email-debian-private; et &email-debian-devel-announce;.
647 Il existe d'autres listes de diffusion spécialisées dans différents thèmes.
648 Reportez-vous à la page <url id="&url-debian-lists-subscribe;"> pour en
649 obtenir la liste complète. Nous déconseillons l'usage des correspondances
650 croisées (envoyer le même message à plusieurs listes).
653 &email-debian-private; est une liste de diffusion destinée aux discussions
654 privées entre développeurs Debian. Elle doit être utilisée pour tout message
655 qui ne doit pas être publié, quelqu'en soit la raison. C'est une liste à
656 faible trafic et les utilisateurs sont priés de ne l'utiliser qu'en cas de
657 réelle nécessité. De plus, il ne faut <em>jamais</em> faire suivre un courrier
658 de cette liste à qui que ce soit.
661 &email-debian-email; est une liste de diffusion fourre-tout. Elle est utilisée
662 pour les correspondances relatives à Debian qu'il serait utile d'archiver, telles
663 que des échanges avec les auteurs amonts à propos de licences, de bogues ou encore
664 des discussions sur le projet avec d'autres personnes.
667 Comme toujours sur internet, éliminez les lignes inutiles quand vous citez
668 le message auquel vous répondez. Plus généralement, respectez
669 les conventions habituelles lorsque vous envoyez des messages.
672 Les archives des listes de diffusion sont disponibles en ligne à l'adresse
673 <url id="&url-lists-archives;">.
678 <sect id="server-machines">Les serveurs Debian
681 Les serveurs Debian sont bien connus et hébergent les fonctions
682 critiques du projet Debian. Tout développeur se doit de savoir ce qu'ils sont
683 et à quoi ils servent.
686 Si vous avez un problème en utilisant un serveur Debian et si vous estimez que
687 les administrateurs système devraient en être avertis, vous trouverez
688 l'adresse d'un responsable pour cette machine à la page <url
689 id="&url-devel-machines;">. Si votre problème n'est pas lié au système
690 (paquet à supprimer ou suggestion pour le site web par exemple), il vous
691 faudra en général ouvrir un rapport de bogue sur un
692 « pseudo-paquet ». Reportez-vous à la section <ref id="submit-bug">
693 pour connaître la procédure à suivre.
698 <sect1 id="servers-master">Le serveur maître
701 <tt>master.debian.org</tt> est le serveur maître du système de suivi des
702 bogues (BTS<footnote>Système de suivi des bogues se dit <em>Bug Tracking
703 System</em> en anglais</footnote>). Si vous envisagez de manipuler les
704 rapports de bogue ou d'en faire une analyse statistique ce sera le bon endroit
705 pour le faire. Informez la liste &email-debian-devel; de votre intention
706 avant d'implémenter quoi que ce soit afin d'éviter un travail en double
707 ou le gaspillage de temps machine.
710 Tous les développeurs Debian ont un compte sur <tt>master.debian.org</tt>.
711 Prenez grand soin de votre mot de passe. Évitez les méthodes de connexion et
712 de téléchargement qui envoient votre mot de passe en clair sur internet.
715 Si vous rencontrez un problème avec <tt>master.debian.org</tt> tel qu'un
716 disque plein, une activité suspecte ou autre, envoyez un courrier
717 électronique à &email-debian-admin;.
722 <sect1 id="servers-ftp-master">Le serveur ftp-master
725 Le serveur ftp-master (<tt>ftp-master.debian.org</tt> ou <tt>
726 auric.debian.org</tt>) est le serveur maître de l'archive Debian
727 (exception faite des paquets non-US). En général, les mises à jour de
728 paquets se font sur ce serveur. Reportez-vous à la section <ref id="upload">
732 Les problèmes avec l'archive Debian FTP doivent généralement être rapportés
733 comme bogue contre le pseudo-paquet <package>ftp.debian.org</package> ou par
734 courrier électronique à &email-ftpmaster; ; reportez-vous à la section <ref
735 id="archive-manip"> pour connaître la procédure à suivre.
740 <sect1 id="servers-www">Le serveur WWW
743 Le serveur web principal, <tt>www.debian.org</tt>, est aussi connu sous le nom
744 <tt>klecker.debian.org</tt>. Tous les développeurs ont un compte sur cette
748 Si vous désirez publier quelques informations spécifiques à Debian sur la
750 vous pouvez le faire en les déposant dans le sous-répertoire
751 <file>public_html</file> de votre répertoire personnel sur
752 <tt>klecker.debian.org</tt>. Toute information déposée à cet endroit est
753 accessible à l'adresse <tt>http://people.debian.org/~<var>user-id</var>/</tt>.
754 Vous devriez préférer ce serveur aux autres car les répertoires
755 <file>public_html</file> du serveur <tt>klecker.debian.org</tt> sont
756 sauvegardés. Ce n'est pas le cas sur les autres serveurs. N'utilisez pas ces
757 serveurs pour publier des informations sans rapport avec le projet Debian
758 avant d'en avoir obtenu la permission. Pour toute question supplémentaire,
759 adressez-vous à la liste &email-debian-devel;.
762 Si vous rencontrez un problème avec un serveur web Debian, vous devez
763 généralement envoyer un rapport de bogue contre le pseudo-paquet
764 <package>www.debian.org</package>. Vérifiez d'abord sur le <url
765 id="http://bugs.debian.org/www.debian.org" name="système de suivi des bogues">
766 que personne ne l'a déjà rapporté avant vous.
771 <sect1 id="servers-cvs">Le serveur CVS
774 Le serveur <tt>cvs.debian.org</tt> est aussi connu sous le nom
775 <tt>klecker.debian.org</tt> (déjà présenté plus haut). Si vous avez besoin
776 d'un serveur CVS accessible par tous pour, par exemple, coordonner le travail
777 de plusieurs développeurs sur un paquet, vous pouvez demander un espace sur ce
781 Le serveur <tt>cvs.debian.org</tt> autorise les accès CVS locaux, les accès en
782 lecture seule pour les connexions client-serveur anonymes et les accès
783 client-serveur complets pour les connexions <prgn>ssh</prgn>. L'espace CVS peut
784 aussi être consulté par la toile à l'adresse <url id="&url-cvsweb;">.
787 Pour obtenir un espace CVS, envoyez une demande à l'adresse
788 &email-debian-admin; en précisant le nom de l'espace, le propriétaire du
789 répertoire racine et pourquoi vous en avez besoin.
794 <sect1 id="servers-mirrors">Les miroirs des serveurs Debian
797 Les serveurs web et FTP Debian sont dupliqués sur d'autres serveurs. Évitez de
798 charger les serveurs originaux. Idéalement, les serveurs originaux se
799 contentent de copier leur contenu sur les miroirs de premier niveau et
800 tous les utilisateurs consultent les miroirs. Ainsi le projet Debian étale
801 ces besoins en bande passante sur plusieurs serveurs et plusieurs réseaux.
802 Notez que la duplication des données sur les miroirs est déclenchée par le
803 serveur maître. Ceci nous garantit que les miroirs sont aussi à jour que
807 La liste des miroirs FTP (et en général HTTP) se trouve à l'adresse <url
808 id="&url-debian-mirrors;">. Vous trouverez plus d'information sur les miroirs
809 Debian à l'adresse <url id="&url-debian-mirroring;">. Cette page contient des
810 informations et des outils qui pourront vous aider si vous avez l'intention de
811 mettre en place votre propre miroir, que ce soit pour un usage interne ou
812 pour un accès public.
815 Les miroirs sont en général mis en oeuvre par des tiers qui veulent aider
816 Debian. C'est pourquoi les développeurs n'ont en général pas de compte sur ces
822 <sect id="other-machines">Les autres machines Debian
825 Vous aurez peut-être accès à d'autres machines Debian. Vous pouvez utiliser
826 ces machines pour des tâches en rapport avec le projet Debian. Soyez gentils
827 avec les administrateurs et ne consommez pas des montagnes d'espace disque, de
828 bande passante ou de temps machine sans en avoir d'abord reçu l'autorisation.
829 En général, ces machines sont gérés par des volontaires et sont utilisées pour
830 des activités de portage.
833 Vous trouverez une liste des autres machines mises à la disposition des
834 développeurs Debian à l'adresse <url id="&url-devel-machines;">.
840 <chapt id="archive">L'archive Debian
845 La distribution Debian est composée d'un grand nombre de paquets Debian
846 (fichiers <tt>.deb</tt> : à peu près &number-of-pkgs;) et de quelques
847 autres fichiers (documentation, images des disquettes d'installation,
851 Voici un exemple d'arborescence pour une archive Debian complète :
854 &sample-dist-dirtree;
857 Comme vous pouvez le voir, le répertoire racine contient deux répertoires,
858 <tt>dists/</tt> et <tt>pool/</tt>. Le second est un ensemble de répertoires où
859 sont stockés les paquets. Ceux-ci sont manipulés grâce à la base de données de
860 l'archive et aux logiciels qui l'accompagnent. Le premier répertoire contient
861 les distributions <em>stable</em>, <em>testing</em> et <em>unstable</em>. Le
862 découpage en sous-répertoires est identique d'un répertoire de distribution à
863 l'autre ; nous nous contenterons donc d'exposer ce découpage pour la
864 distribution <em>stable</em>. Les fichiers <tt>Packages</tt> et
865 <tt>Sources</tt> qui se trouvent dans les répertoires de distribution peuvent
866 faire référence à des fichiers du répertoire <tt>pool/</tt>.
870 Le répertoire <tt>dists/stable</tt> contient trois répertoires nommés
871 <tt>main</tt>, <tt>contrib</tt> et <tt>non-free</tt>.
874 Dans chacune de ces sections se trouve un répertoire contenant les paquets
875 sources (<tt>source/</tt>), un répertoire pour chaque architecture supportée
876 (<tt>binary-i386/</tt>, <tt>binary-m68k/</tt>, etc) et un répertoire pour les
877 paquets indépendants de l'architecture (<tt>binary-all/</tt>).
880 La section <em>main</em> contient d'autres répertoires destinés aux images de
881 disquettes et à quelques documentations essentielles pour installer la
882 distribution Debian sur une architecture particulière (<tt>disk-i386/</tt>,
883 <tt>disk-m68k/</tt>, etc).
886 Les répertoires <tt>binary-*/</tt> et <tt>source/</tt> sont à nouveau
887 divisés en <em>sous-sections</em>.
894 La section <em>main</em> constitue la <strong>distribution Debian GNU-Linux
895 officielle</strong>. Elle est officielle parce qu'elle est conforme à toutes
896 nos recommandations. Les deux autres sections divergent de ces recommandations
897 à différents degrés, elles ne font donc pas officiellement partie de Debian.
900 Chaque paquet de la section <em>main</em> doit être conforme aux <url
901 id="&url-dfsg;" name="Debian Free Software Guidelines"> et à toutes les autres
902 recommandations décrites dans <url id="&url-debian-policy;" name="le Debian
903 Policy Manual">. Les DFSG<footnote><em>Debian Free Software
904 Guidelines</em></footnote> constituent notre définition de <em>logiciel
905 libre</em>. Reportez-vous au <em>Debian Policy Manual</em> pour en savoir
909 Les paquets de la section <em>contrib</em> doivent être conformes aux DFSG
910 mais ne respectent pas d'autres contraintes. Ils peuvent par exemple dépendre
911 de paquets de la section <em>non-free</em>.
914 Les paquets qui ne sont pas conformes aux DFSG sont rangés dans la section
915 <em>non-free</em>. Bien que nous supportions l'usage de ces paquets et qu'ils
916 bénéficient de nos infrastructures (système de suivi des bogues, listes de
917 diffusion, etc), ces paquets <em>non-free</em> ne font pas partie de la
921 Le <em>Debian Policy Manual</em> donne des définitions plus précises pour ces trois sections.
922 Les paragraphes précédants ne constituent qu'une introduction.
925 La séparation de l'archive en trois sections est
926 importante pour toute personne qui désire distribuer Debian, que ce soit par
927 serveur FTP ou sur cédérom. Il suffit de distribuer les sections <em>main</em>
928 et <em>contrib</em> pour éviter tout problème légal. Certains paquets de la
929 section <em>non-free</em> interdisent leur distribution à titre commercial par
933 D'un autre coté, un distributeur de cédérom pourra facilement vérifier
934 individuellement les licences des paquets de la section <em>non-free</em> et
935 ajouter autant de paquets qu'il est autorisé à le faire sur ses cédéroms (dans
936 la mesure où cela varie énormément d'un distributeur à l'autre ce travail ne
937 peut être fait par les développeurs Debian).
941 <sect>Les architectures
944 À ses débuts, le noyau Linux existait uniquement pour les architectures Intel
945 x86 ; il en était de même pour Debian. Linux devenant de plus
946 en plus populaire, il a été porté vers d'autres architectures. <p> Le noyau
947 2.0 existe pour les architectures Intel x86, DEC Alpha, SPARC, Motorola, 680x0
948 (Atari, Amiga, et Macintosh), MIPS et PowerPC. Le noyau 2.2 supporte encore
949 plus d'architectures dont ARM et UltraSPARC. Puisque Linux supporte ces
950 architectures, Debian a décidé qu'il devait les supporter aussi. C'est
951 pourquoi plusieurs portages sont en cours ; en fait il y a aussi des portages
952 vers d'autres noyaux. À coté d'<em>i386</em> (notre nom pour Intel x86), nous
953 avons, au moment où j'écris <em>m68k</em>, <em>alpha</em>, <em>powerpc</em>,
954 <em>sparc</em>, <em>hurd-i386</em>, et <em>arm</em>.
957 Debian GNU-Linux 1.3 est disponible uniquement pour <em>i386</em>. Debian 2.0
958 supporte les architectures <em>i386</em> et <em>m68k</em>. Debian 2.1
959 supporte les architectures <em>i386</em>, <em>m68k</em>, <em>alpha</em> et
960 <em>sparc</em>. Debian 2.2 ajoute le support de l'architecture
964 Vous trouverez des informations destinées aux développeurs à propos d'un
965 portage particulier sur la page <url id="&url-debian-ports;" name="Portage
971 <sect>Les sous-sections
974 Les sections <em>main</em>, <em>contrib</em> et <em>non-free</em> sont
975 divisées en sous-sections pour simplifier le processus d'installation et la
976 maintenance de l'archive Debian. Ces sous-sections ne sont pas définies
977 formellement, à l'exception peut-être de la sous-section <em>base</em>.
978 Elles existent pour simplifier l'organisation des paquets et la navigation
979 dans la liste des paquets disponibles. Reportez-vous à la distribution
980 courante pour connaître la liste des sous-sections disponibles.
983 Notez qu'avec l'introduction de la nouvelle organisation de l'archive (voir le
984 répertoire racine <em>pool/</em>), les sous-sections matérialisées par des
985 répertoires pourraient disparaître à l'avenir. Elles seront cependant
986 conservées dans le champ <tt>Section</tt> de l'en-tête des paquets.
994 Il existe deux types de paquets Debian : les paquets sources et les
998 Les paquets sources sont constitués de deux ou trois fichiers :
1002 un fichier <tt>.dsc</tt> et un fichier <tt>.tar.gz</tt> ou,
1005 un fichier <tt>.dsc</tt>, un fichier <tt>.orig.tar.gz</tt> et un
1006 fichier <tt>.diff.gz</tt>.
1011 Si un paquet est développé spécifiquement pour le projet Debian et n'est pas
1012 distribué en dehors de Debian, il n'y a qu'un fichier <tt>.tar.gz</tt> qui
1013 contient les sources du programme. Si un paquet est distribué ailleurs, le
1014 fichier <tt>.orig.tar.gz</tt> contient ce que l'on appelle <em>code source
1015 amont</em>, c'est-à-dire le code source distribué par le <em>mainteneur
1016 amont</em> (il s'agit souvent de l'auteur du logiciel). Dans ce cas, le
1017 fichier <tt>.diff.gz</tt> contient les modifications faites par le responsable
1021 Le fichier <tt>.dsc</tt> liste tous les fichiers sources avec leurs sommes de
1022 contrôle (<prgn>md5sums</prgn>) et quelques informations supplémentaires
1023 concernant le paquet (responsable, version, etc).
1028 <sect>Les répertoires des distributions
1031 L'organisation des répertoires présentée précédemment est elle-même englobée
1032 par les <em>répertoires des distributions</em>. Chaque distribution est
1033 incluse dans le répertoire <tt>pool</tt> à la racine de l'archive Debian.
1036 En résumant, une archive Debian a un répertoire racine sur un serveur FTP. Par
1037 exemple, sur le site miroir <ftpsite>ftp.us.debian.org</ftpsite>, l'archive
1038 Debian se trouve dans <ftppath>/debian</ftppath> ce qui est un emplacement
1039 courant. Un autre emplacement courant est <tt>/pub/debian</tt>.
1042 Une distribution est composée de paquets Debian sources et binaires et des
1043 fichiers <tt>Sources</tt> et <tt>Packages</tt> correspondants. Ces derniers
1044 contiennent la description de tous les paquets. Les premiers sont
1045 conservés dans le répertoire <tt>pool/</tt> tandis que les seconds sont
1046 conservés dans le répertoire <tt>dists/</tt> de l'archive (pour des questions
1047 de compatibilité descendante)
1052 <sect1 id="life-cycle"><em>Stable</em>, <em>testing</em>,
1053 <em>unstable</em> et parfois <em>frozen</em>
1056 Il y a toujours une distribution appelée <em>stable</em> (dans le répertoire
1057 <tt>dists/stable</tt>), une distribution appelée <em>testing</em> (dans le
1058 répertoire <tt>dists/testing</tt>) et une distribution appelée
1059 <em>unstable</em> (dans le répertoire <tt>dists/unstable</tt>). Ceci reflète
1060 le processus de développement du projet Debian.
1063 Les développements se font sur la distribution <em>unstable</em><footnote>
1064 <em>unstable</em> signifie « instable »</footnote> (c'est pourquoi
1065 elle est aussi appelée <em>distribution de développement</em>). Chaque
1066 développeur Debian peut modifier ses paquets à tout moment dans cette
1067 distribution. Ainsi son contenu change tous les jours. Comme aucun effort
1068 particulier n'est fait pour s'assurer que tout fonctionne correctement dans
1069 cette distribution, elle est parfois <em>instable</em>.
1072 Les paquets sont copiés de <em>unstable</em> vers <em>testing</em> s'ils
1073 satisfont certains critères. Pour entrer dans la distribution <em>testing</em>
1074 un paquet doit faire partie de l'archive depuis deux semaines et ne doit pas
1075 avoir de bogue bloquant pour la distribution<footnote><em>Release critical
1076 bug</em></footnote>. Passée cette période, le paquet sera installé dans
1077 <em>testing</em> dès que les paquets dont il dépend y seront. Ce processus est
1081 Après une période de développement, quand le responsable de
1082 distribution<footnote><em>Release manager</em></footnote> le juge opportun, la
1083 distribution <em>testing</em> est renommée <em>frozen</em>. Une fois que cela
1084 est fait, aucun changement n'est autorisé sur cette distribution en dehors des
1085 corrections de bogues ; c'est pourquoi nous l'appelons <em>frozen<footnote>
1086 <em>frozen</em> signifie « gelée »</footnote></em>. Après un mois
1087 ou un peu plus selon l'avancement, la distribution entre dans une phase de
1088 « gel complet » où les seules modifications acceptées concernent la
1089 procédure d'installation. Cette phase s'appelle un « cycle de test »
1090 et cela peut durer jusqu'à deux semaines. Il peut y avoir plusieurs cycles de
1091 tests avant que le responsable de distribution ne la déclare prête pour la
1092 diffusion. À la fin du dernier cycle de test, la distribution <em>frozen</em>
1093 est renommée <em>stable</em>, remplaçant l'ancienne distribution <em>stable</em> qui
1094 est enlevée à cette occasion.
1097 Ce cycle de développement est basé sur l'idée que la distribution
1098 <em>instable</em> devient <em>stable</em> après une période de test en tant
1099 que distribution <em>gelée</em>. Une distribution contient inévitablement des
1100 bogues, même si elle est classée stable. C'est pourquoi les distributions
1101 stables sont mises à jour de temps en temps. Les corrections introduites sont
1102 testées avec une grande attention et ajoutées individuellement à l'archive
1103 pour diminuer les risques d'introduire de nouveaux bogues. Vous pouvez trouver
1104 des paquets proposés pour les mises à jour de <em>stable</em> dans le
1105 répertoire <tt>proposed-updates</tt>. De temps en temps, les paquets de ce
1106 répertoire qui ne présentent pas de problème sont installés dans la
1107 distribution <em>stable</em> et le numéro de révision de cette distribution
1108 est incrémenté (« 1.3 » devient « 1.3r1 »,
1109 « 2.0r2 » devient « 2.0r3 » et ainsi de suite).
1112 Notez que pendant la période de gel les développements continuent sur la
1113 distribution instable car cette distribution reste en place quand
1114 <em>testing</em> devient <em>frozen</em>. Quand la distribution
1115 <em>frozen</em> devient officiellement <em>stable</em>, l'ancienne distribution
1116 stable est entièrement supprimée de l'archive Debian (elle reste cependant
1117 disponible à l'adresse <tt>&archive-host;</tt>).
1120 En résumé, les distributions <em>stable</em>, <em>testing</em> et
1121 <em>unstable</em> sont disponibles en permanence et de temps en temps, une
1122 distribution <em>frozen</em> apparaît pour quelques mois.
1131 <em>NOTE : <em>experimental</em> ne fonctionne plus depuis la mise en place du
1132 <em>package pool</em>. Si la distribution <em>experimental</em> est remise en service
1133 un jour, la présente section aura sûrement besoin d'une mise à jour.</em>
1136 La distribution <em>experimental</em> est une distribution particulière. Ce
1137 n'est pas une distribution à part entière comme le sont <em>stable</em> et
1138 <em>unstable</em>. Elle est prévue pour servir de plate-forme de développement
1139 pour les projets expérimentaux qui ont de grandes chances de détruire le
1140 système. Les utilisateurs qui téléchargent et installent des paquets depuis
1141 <em>experimental</em> sont prévenus : on ne peut pas faire confiance à la
1142 distribution <em>experimental</em>.
1145 Les responsables doivent être très sélectifs quant à l'utilisation de la
1146 distribution <em>experimental</em>. Même très instable, un paquet peut aller
1147 dans <em>unstable</em> ; ajoutez juste quelques avertissements dans la
1148 description. Par contre, s'il y a une chance que le logiciel endommage
1149 sérieusement le système, il est préférable de le mettre dans
1150 <em>experimental</em>.
1153 Un système de fichier compressé, par exemple, devrait probablement aller dans
1154 <em>experimental</em>. Une nouvelle version non finalisée d'un logiciel qui
1155 utilise une méthode de configuration complètement différente pourrait aller
1156 dans <em>experimental</em> à la discrétion du responsable. Un nouveau logiciel
1157 qui a peu de chance d'endommager le système ira dans <em>unstable</em>. Si
1158 vous travaillez sur un cas de mise à jour complexe ou incompatible vous pouvez
1159 aussi utiliser <em>experimental</em> comme plate-forme d'intégration et ainsi
1160 fournir un accès aux testeurs.
1163 Par contre, utiliser <em>experimental</em> comme plate-forme n'est pas
1164 toujours la meilleure idée, surtout pour les paquets éphémères.
1165 Vous ne pouvez pas effacer un paquet qui a été installé dans cet espace
1166 vous même ; cela doit être fait par l'équipe d'administration de l'archive.
1167 Une solution consiste à utiliser vos pages web personnelles sur le serveur
1168 <tt>klecker.debian.org</tt> (c.-à-d. <tt>people.debian.org</tt>).
1172 <sect id="codenames">Les noms de distribution
1175 Chaque distribution Debian diffusée a un nom : Debian 1.1 s'appelle
1176 « buz » ; Debian 1.2, « rex » ; Debian 1.3 « bo » ;
1177 Debian 2.0, « hamm » ; Debian 2.1, « slink »; Debian 2.2
1178 « potato » et Debian 3.0 « woody ». Il y a aussi une pseudo-distribution nommée
1179 « sid », il s'agit de la distribution <em>unstable</em> ; comme les
1180 paquets vont de <em>unstable</em> à <em>testing</em> quand ils approchent de
1181 la stabilité, la distribution « sid » n'est jamais diffusée. En plus
1182 du contenu habituel d'une distribution Debian, « sid » contient des
1183 paquets pour des architectures qui ne sont pas encore officiellement
1184 supportées ou pour lesquelles la distribution n'a pas encore été diffusée. Ces
1185 architectures doivent rejoindre les architectures supportées à une date
1189 Comme Debian est un projet de développement ouvert (i.e. tout le monde peut
1190 participer et suivre les développements) même les distributions
1191 <em>unstable</em> et <em>testing</em> sont disponibles sur les serveurs HTTP
1195 Si nous avions nommé le répertoire qui contient la prochaine version àc
1196 diffuser « testing », il aurait fallu le renommer
1197 « stable » au moment de la diffusion, ce qui aurait forcé les
1198 miroirs FTP à re-télécharger la distribution complète (qui est plutôt
1202 D'un autre coté, si une distribution s'appelle <em>Debian-x.y</em> dès le
1203 départ, des personnes pourraient s'imaginer que la distribution Debian
1204 <em>x.y</em> est disponible. (Cela s'est produit par le passé, un distributeur
1205 avait gravé des cédéroms Debian 1.0 en utilisant une version de développement
1206 pré-1.0. C'est pour cette raison que la première version officielle était la
1207 version 1.1 et non la 1.0.)
1210 En conséquence, les noms de répertoire des distributions dans l'archive sont
1211 déterminés par leurs noms de code et non par leur statut (exemple : slink). Ces
1212 noms sont identiques pendant la période de développement et une fois la
1213 distribution diffusée ; des liens symboliques, qui peuvent être modifiés
1214 facilement, indiquent la distribution stable actuelle.
1217 Tout ceci explique pourquoi les répertoires des distributions sont nommés à
1218 partir des noms de code des distributions alors que <em>stable</em>,
1219 <em>testing</em>, <em>unstable</em> et <em>frozen</em> sont des liens
1220 symboliques qui pointent vers les répertoires appropriés.
1226 <chapt id="upload">La mise à jour d'un paquet
1229 <sect>Annoncer un nouveau paquet
1232 Si vous voulez créer un nouveau paquet pour la distribution Debian vous
1233 devriez commencer par consulter la liste des <url id="&url-wnpp;"
1234 name="paquets en souffrance et paquets souhaités">. Vous pourrez ainsi
1235 vérifier que personne ne travaille déjà sur ce paquet et éviter un double
1236 travail. Consultez aussi cette page si vous voulez en savoir plus.
1239 Supposons que personne ne travaille sur le paquet que vous visez, vous devez
1240 alors envoyer un rapport de bogue (voir <ref id="submit-bug">) concernant le
1241 pseudo-paquet <tt>wnpp</tt>. Ce
1242 courrier devra décrire le paquet que vous projetez de créer, la licence de ce
1243 paquet et l'URL à laquelle le source peut être téléchargé. Cette liste n'est
1247 Le sujet de votre rapport de bogue devra être <ITP<footnote><em>Intent To
1248 Package</em> : intention de mise en paquet</footnote> :
1249 <var>NomDuPaquet</var> — <var> courte description </var>>, en remplaçant
1250 <var>NomDuPaquet</var> par le nom du paquet. La gravité du bogue sera
1251 <em>whishlist</em>. Si vous le jugez nécessaire, envoyez une copie à
1252 &email-debian-devel; en mettant cette adresse dans le champ X-Debbugs-CC: de
1253 l'en-tête du message. N'utilisez pas le champ CC: car de cette manière le
1254 sujet du message ne contiendra pas le numéro du bogue.
1257 Il faudra aussi ajouter une entrée
1258 <tt>Closes: bug#<var>nnnnn</var></tt> dans le fichier <file>changelog</file>
1259 du nouveau paquet. Cette indication fermera automatiquement le rapport de
1260 bogue à l'installation du nouveau paquet sur les serveurs d'archivage (voir
1261 <ref id="upload-bugfix">).
1264 Il y a plusieurs raisons qui nous poussent à demander aux responsables d'annoncer
1265 leurs intentions :
1269 Les responsables ont ainsi la possibilité de puiser dans l'expérience
1270 des autres responsables et cela leur permet de savoir si une autre personne
1271 travaille déjà dessus.
1274 D'autres personnes qui envisagent de travailler sur le même paquet
1275 apprendront ainsi qu'il existe déjà un volontaire, l'effort peut alors
1279 Cela permet aux autres responsables d'en savoir plus sur le nouveau
1280 paquet que ne le permettent la description d'une ligne et l'habituelle
1281 entrée « <em>Initial release</em> » que l'on trouve dans les
1282 fichiers <em>changelog</em> qui sont postés sur
1283 <tt>debian-devel-changes</tt>.
1286 C'est une information utile pour les gens qui utilisent la
1287 distribution <em>unstable</em> et qui sont nos premiers testeurs. Nous
1288 devons faciliter la tâche de ces gens.
1291 Avec ces annonces, les développeurs Debian et toutes les autres personnes
1292 intéressées peuvent se faire une meilleure idée des évolutions et nouveautés du
1301 <sect id="uploading">Mettre à jour un paquet
1304 <sect1>Générer le fichier « changes »
1307 Chaque nouvelle version d'un paquet installé sur les archives FTP Debian doit
1308 être accompagnée d'un fichier <tt>.changes</tt>. Ce fichier explique à
1309 l'administrateur de l'archive Debian ce qu'il doit faire du paquet. Il est en
1310 général créé par <prgn>dpkg-genchanges</prgn> au cours du processus de
1311 fabrication du paquet.
1314 Le fichier <tt>changes</tt> est un fichier de contrôle qui contient les champs
1318 &control-file-fields;
1321 Tous ces champs sont obligatoires pour une installation sur les serveurs
1322 Debian. Vous pouvez consulter la liste des champs de contrôle dans le
1323 <url id="&url-debian-policy;" name="Debian Policy Manual"> pour connaître
1324 les valeurs que prennent ces champs. Vous pouvez fermer un rapport de bogue
1325 automatiquement avec le champ <tt>Description</tt> (voir <ref
1326 id="upload-bugfix">). Nous ne verrons ici que le champ <tt>Distribution</tt>
1327 car il est directement lié aux règles d'administration de l'archive.
1332 <sect1 id="upload-dist">Choisir une distribution
1335 Le champ <tt>Distribution</tt>, qui provient du fichier
1336 <file>debian/changelog</file>, indique à quelle distribution le paquet est
1337 destiné. Il y a quatre valeurs possibles pour ce champ : <em>stable</em>,
1338 <em>unstable</em>, <em>frozen</em> et <em>experimental</em> ; ces valeurs
1339 peuvent aussi être combinées. Si, par exemple, Debian a été gelée et vous
1340 voulez mettre à jour une correction de bogue sur <em>frozen</em>, il faudra
1341 indiquer <em>frozen unstable</em> dans le champ distribution (se reporter à
1342 <ref id="upload-frozen"> pour savoir quand vous pouvez faire une mise à jour
1343 sur <em>frozen</em>). Notez bien qu'il n'y a pas de raison de combiner
1344 <em>experimental</em> avec quelque distribution que ce soit.
1347 Vous devriez éviter de combiner <em>stable</em> avec d'autres cibles à cause
1348 des problèmes potentiels de dépendance de bibliothèque (pour votre paquet et
1349 pour les paquets fabriqués par le démon de compilation pour les autres
1350 architectures). Notez encore que choisir la valeur <em>stable</em> pour ce
1351 champ signifie que le paquet sera dirigé vers le répertoire
1352 <tt>proposed-update</tt> des archives Debian pour y être testé avant d'être
1353 effectivement inclus dans <em>stable</em>. L'équipe responsable de la
1354 distribution<footnote><em>the release team</em></footnote> (joignable à
1355 l'adresse &email-debian-release;) prendra la décision d'inclure ou de ne pas
1356 inclure votre paquet dans la distribution <em>stable</em>. C'est pourquoi vous
1357 pourrez choisir de leur envoyer un courrier expliquant les motifs qui vous ont
1358 incité à faire une mise à jour pour <em>stable</em>, si votre fichier
1359 <file>changelog</file> n'est pas suffisamment clair sur ce point.
1362 La première fois qu'un paquet est installé dans l'archive pour une version
1363 amont donnée, le fichier <tt>tar</tt> de cette version amont doit être
1364 téléchargé et mentionné dans le fichier <tt>.changes</tt>. Par la suite, ce
1365 fichier <tt>tar</tt> sera utilisé pour générer les fichiers <tt>diff</tt> et
1366 <tt>.dsc</tt> et il ne sera pas nécessaire de le re-télécharger.
1369 Par défaut, <prgn>dpkg-genchanges</prgn> et <prgn>dpkg-buildpackage</prgn>
1370 incluront le fichier <tt>tar</tt> amont si et seulement si le numéro de
1371 révision du paquet source est 0 ou 1, ce qui indique une nouvelle version
1372 amont. Ce comportement peut être modifié en utilisant <tt>-sa</tt> pour
1373 l'inclure systématiquement ou <tt>-sd</tt> pour ne jamais l'inclure.
1376 Si la mise à jour ne contient pas le fichier <tt>tar</tt> des sources
1377 originaux, <prgn>dpkg-source</prgn> <em>doit</em>, pour construire les
1378 fichiers <tt>.dsc</tt> et <tt>diff</tt> de la mise à jour, utiliser un fichier
1379 <tt>tar</tt> identique à l'octet près à celui sur le serveur. Si pour une
1380 raison ou pour une autre il y a une différence, la nouvelle version de ce
1381 fichier doit à nouveau être incluse dans la mise à jour (en utilisant l'option
1382 <tt>-sa</tt> par exemple).
1389 <sect2 id="upload-frozen">Mettre à jour la distribution <em>frozen</em>
1392 Le gel de la distribution est un moment crucial pour Debian. C'est l'occasion
1393 de synchroniser et de stabiliser notre distribution en un tout
1394 cohérent. Il faut donc être très vigilant quand on fait une mise à jour
1395 pour <em>frozen</em>.
1398 Il est tentant de toujours mettre en paquet la dernière version d'un logiciel
1399 pour Debian ; mais il est bien plus important que le système soit stable et
1400 qu'il fonctionne de la manière attendue.
1403 Le mot d'ordre pour télécharger vers <em>frozen</em> est : <strong>pas de code
1404 nouveau</strong>. C'est une chose difficile à quantifier, voici quelques
1410 Les corrections de bogues de gravité <em>critique</em>,
1411 <em>grave</em> ou <em>sérieuse</em><footnote>respectivement
1412 <em>critical</em>, <em>grave</em> ou <em>serious</em></footnote> sont
1413 toujours autorisées pour les paquets qui doivent exister dans la
1417 Les corrections pour les bogues de gravité <em>critique</em>,
1418 <em>grave</em> ou <em>sérieuse</em><footnote>respectivement
1419 <em>critical</em>, <em>grave</em> ou <em>serious</em></footnote> sont
1420 autorisées pour les paquets non indispensables uniquement si elles
1421 n'ajoutent pas de nouvelle fonctionnalité.
1424 Les corrections pour les bogues de gravité <em>importante</em>,
1425 <em>normale</em> et <em>mineure</em><footnote>respectivement
1426 <em>important</em>, <em>normal</em> et <em>minor</em></footnote> sont
1427 autorisées, bien que découragées, sur tous les paquets si et seulement
1428 s'elles n'ajoutent pas de nouvelle fonctionnalité.
1431 Les corrections de gravité <em>wishlist</em> ne sont pas autorisées (ce
1432 ne sont pas vraiment des bogues après tout).
1435 Les corrections liées à la documentation sont autorisés car il est
1436 important d'avoir une bonne documentation.
1441 L'expérience montre qu'il y a 15% de chance d'introduire un nouveau bogue en
1442 corrigeant un autre bogue. L'introduction et la découverte d'un nouveau bogue
1443 retarde la mise à disposition de la distribution ou affaiblit le produit
1444 final. Il y a très peu de corrélation entre la gravité du bogue corrigé et
1445 la gravité du bogue introduit par la correction.
1450 <sect1 id="upload-checking">Vérifier le paquet avant la mise à jour
1453 Avant de mettre à jour votre paquet vous ferez quelques tests de base. Vous
1454 devrez au moins faire les tests suivants (il vous faut une ancienne version
1455 du paquet pour cela) :
1459 Installez le paquet et vérifiez que le logiciel fonctionne. Si le
1460 paquet existait déjà dans une version plus ancienne, faites une mise à
1464 Exécutez <prgn>lintian</prgn> sur votre paquet. Vous pouvez exécuter
1465 <prgn>lintian</prgn> comme suit : <tt>lintian -v
1466 <var>package-version</var>.changes</tt>. Ce programme fera une
1467 vérification sur les paquets source et binaire. Si vous ne comprenez
1468 par les messages générés par <prgn>lintian</prgn> essayez l'option
1469 <tt>-i</tt>. Cette option rendra <prgn>lintian</prgn> beaucoup plus
1470 bavard dans sa description du problème. <p> Un paquet pour lequel
1471 <prgn>lintian</prgn> génère des erreurs (elles commencent par
1472 <tt>E</tt>) <em>ne doit pas</em> être installé dans l'archive.
1475 Pour en savoir plus sur <prgn>lintian</prgn> reportez-vous à la
1476 section lintian <ref id="lintian">. <item> Faites régresser le paquet
1477 vers sa version précédente si elle existe — cela permet de tester les
1478 scripts <tt>postrm</tt> et <tt>prerm</tt>.
1481 Désinstallez le paquet et réinstallez-le.
1489 <sect1 id="upload-ftp-master">Installer un paquet sur
1493 Pour installer un paquet vous avez besoin d'un compte sur
1494 <ftpsite>ftp-master</ftpsite>, ce que vous devez avoir en tant que
1495 développeur Debian. Si vous utilisez <prgn>scp</prgn> ou <prgn>rsync</prgn>
1496 pour télécharger vos paquets, placez-les dans
1497 <tt>&us-upload-dir;</tt>. Si vous utilisez un FTP anonyme,
1498 placez-les dans <ftppath>/pub/UploadQueue/</ftppath>.
1501 <em>Note :</em> ne téléchargez pas de paquet soumis aux lois de contrôle des
1502 exportations américaines sur le serveur <tt>ftp-master</tt>, ni sur les serveurs
1503 <tt>chiark</tt> et <tt>erlangen</tt>. Cet interdit couvre à peu près tous les
1504 logiciels de cryptographie ainsi que quelques logiciels liés aux logiciels de
1505 cryptographie comme les clients de courrier électronique qui utilisent le
1506 cryptage et l'authentification PGP. Ces logiciels doivent être téléchargés sur
1507 le serveur <tt>non-us</tt>. Reportez-vous à la section <ref
1508 id="upload-non-us"> pour en savoir plus. Si vous ne savez pas si votre paquet
1509 est soumis aux lois de contrôle des exportations américaines posez la question sur la
1510 liste &email-debian-devel;.
1513 Le paquet <package>dupload</package> pourra vous faciliter le travail lors du
1514 téléchargement. Ce programme, bien pratique, est configuré par défaut pour
1515 se connecter par FTP sur les serveurs <tt>ftp-master</tt>,
1516 <tt>chiark</tt> et <tt>erlangen</tt>. Il peut aussi être configuré pour
1517 utiliser <prgn>ssh</prgn> ou <prgn>rsync</prgn>. Se reporter à <manref
1518 name="dupload" section="1"> et <manref name="dupload" section="5"> pour en
1522 Après avoir téléchargé votre paquet, vous pouvez vérifier ce qu'en fera le
1523 logiciel de maintenance de l'archive en exécutant <prgn>dinstall</prgn>
1524 sur votre fichier <file>.changes</file> :
1526 <example>dinstall -n foo.changes</example>
1532 <sect1 id="upload-non-us">Installer un paquet sur <tt>non-US</tt>
1536 Comme nous l'avons dit un peu plus haut, les programmes soumis au contrôle des
1537 exportations américain ne doivent pas être installés sur <tt>ftp-master</tt>.
1538 Utilisez <prgn>scp</prgn> ou <prgn>rsync</prgn> pour copier votre paquet sur
1539 <ftpsite>non-us.debian.org</ftpsite>. Placer les fichiers dans le répertoire
1540 <tt>&non-us-upload-dir;</tt>. Par défaut, vous pouvez utiliser le même
1541 <em>login/mot de passe</em> que pour <tt>ftp-master</tt>. Si vous utilisez
1542 une connexion FTP anonyme pour le téléchargement, placez vos fichiers dans le
1543 répertoire <ftppath>/pub/UploadQueue/</ftppath>.
1546 Le programme <prgn>dupload</prgn> est, lui aussi, capable de télécharger sur
1547 <tt>non-us</tt> ; consultez la documentation de ce programme pour en savoir
1551 Tout comme sur <tt>ftp-master</tt>, vous pouvez vérifier votre téléchargement
1554 <example>dinstall -n foo.changes</example>
1558 Attention, les personnes résidant aux États-Unis et les citoyens américains
1559 sont soumis à des restrictions sur l'exportation des logiciels de
1560 cryptographie. Au moment où j'écris, les citoyens américains peuvent exporter
1561 quelques logiciels de cryptographie soumis à une obligation de déclaration
1562 auprès du département du commerce américain.
1565 Le <em>Debian Policy Manual</em> n'empêche pas les résidents et citoyens
1566 américains de livrer des paquets sur <tt>non-US</tt> mais ils devront être
1567 vigilants en le faisant. Nous recommandons aux responsables concernés de
1568 prendre toutes les précautions nécessaires, <em>y compris la consultation d'un
1569 juriste</em>, pour s'assurer qu'ils n'enfreignent pas une loi américaine en
1570 livrant un paquet sur <tt>non-US</tt>.
1573 Pour les paquets des sections <em>non-US/main</em> et <em>non-US/contrib</em>
1574 les responsables devraient au moins suivre la <url id="&url-u.s.-export;"
1575 name="procédure décrite par le gouvernement américain">. Les responsables de
1576 paquets <em>non-US/non-free</em> devront en plus consulter les <url
1577 id="&url-notification-of-export;" name="règles de déclaration d'exportation
1578 pour les logiciels commerciaux">.
1581 Cette section a pour seul but d'informer, elle n'a pas valeur de conseil
1582 juridique. Une fois encore, nous recommandons aux résidents et citoyens
1583 américains de consulter un juriste avant de livrer un paquet sur
1587 <sect1>Installer un paquet via <tt>chiark</tt>
1590 Si votre connexion vers <tt>ftp-master</tt> est lente, vous avez plusieurs
1591 possibilités. L'une d'elles consiste à télécharger vos fichiers dans
1592 <tt>Incoming</tt> en passant par le serveur <tt>chiark</tt> en Europe. Comme
1593 cette file d'attente des mises à jour est redirigée vers <tt>ftp-master</tt>,
1594 les indications de la section <ref id="upload-ftp-master"> sont applicables ici
1598 Le programme <prgn>dupload</prgn> est capable de télécharger sur
1599 <tt>chiark</tt> ; consultez la documentation de ce programme pour en savoir
1604 <sect1>Installer un paquet via <tt>erlangen</tt>
1607 Vous pouvez aussi accéder à un serveur situé en Allemagne : il vous suffit
1608 d'ouvrir une connexion anonyme sur :
1611 <url id="&url-upload-erlangen;">.
1614 Le téléchargement fait sur ce serveur doit être aussi complet que s'il
1615 était fait dans le répertoire <tt>Incoming</tt> sur <tt>ftp-master</tt> :
1616 il doit comporter le fichier <file>.changes</file> et tous les fichiers
1617 mentionnés dans ce dernier. Le serveur vérifie que le fichier
1618 <tt>.changes</tt> est bien signé avec la clé PGP d'un développeur Debian pour
1619 éviter que des faux paquets n'atteignent <tt>ftp-master</tt>. Vérifiez bien
1620 que le champ <tt>Maintainer</tt> du fichier <tt>.changes</tt> contient
1621 <em>votre</em> adresse électronique. De même que sur <tt>ftp-master</tt>,
1622 cette adresse est ensuite utilisée pour toutes les réponses.
1625 Il n'est pas nécessaire de déplacer votre fichier dans un autre répertoire
1626 après le téléchargement, contrairement au serveur <tt>chiark</tt>. Vous
1627 devriez ensuite recevoir un courrier du serveur expliquant ce qu'il a fait de
1628 votre paquet. Normalement, il devrait avoir été déplacé vers
1629 <tt>ftp-master</tt> ;
1630 vous serez informé par le même biais si une erreur s'est produite au cours du
1634 <em>Note :</em> ne téléchargez pas de paquets contenant des logiciels tombant
1635 sous le coup de la loi de contrôle des exportations américaine sur
1636 <tt>erlangen</tt>. Comme les paquets téléchargés ici vont vers
1637 <tt>ftp-master</tt>, les règles décrites dans la section <ref
1638 id="upload-ftp-master"> sont applicables ici aussi.
1641 Le programme <prgn>dupload</prgn> est capable de télécharger sur
1642 <tt>erlangen</tt> ; consultez la documentation de ce programme pour en savoir
1649 <sect1>Les autres serveurs
1652 Un autre serveur est disponible aux États-Unis ; c'est un bon point
1653 de repli quand il est difficile de joindre <tt>ftp-master</tt>. Livrez vos
1654 paquets à l'adresse <url id="&url-upload-samosa;"> comme vous le feriez sur
1657 Il existe aussi un serveur au Japon : téléchargez vos paquet par FTP
1658 anonyme sur <url id="&url-upload-jp;">.
1663 <sect id="upload-announce">Annoncer une mise à jour
1666 Quand un paquet est mis à jour, une annonce doit être envoyée sur l'une des
1667 listes « debian-changes ». Ceci est maintenant géré automatiquement
1668 par le logiciel de gestion de l'archive quand il est exécuté (en principe une
1669 fois par jour). Vous devez juste utiliser une version récente de
1670 <package>dpkg-dev</package> (>= 1.4.1.2). Le courrier généré par le
1671 logiciel de maintenance de l'archive contiendra le fichier <tt>.changes</tt>
1672 signé que vous avez livré avec votre paquet. Précédemment, cette charge
1673 revenait à <prgn>dupload</prgn> ; vérifiez que vous avez bien configuré
1674 <prgn>dupload</prgn> pour qu'il n'envoie pas ces annonces (cherchez
1675 <tt>dinstall_runs</tt> dans la documentation de <prgn>dupload</prgn>).
1678 Si un paquet est mis à jour pour la distribution <em>stable</em>, l'annonce
1679 est envoyée sur la liste :
1682 <tt> &email-debian-changes;.</tt>
1685 S'il est mis à jour pour les distributions <em>unstable</em>,
1686 <em>experimental</em> ou <em>frozen</em>, l'annonce est envoyée sur la liste
1687 &email-debian-devel-changes;.
1690 De temps en temps, il est nécessaire de mettre à jour simultanément les
1691 distributions <em>stable</em> et <em>unstable</em> ; cela est possible en
1692 indiquant les deux distributions sur la ligne <tt>Distribution:</tt>. Dans ce
1693 dernier cas, l'annonce sera faite sur les deux listes de diffusion citées
1697 Le programme <prgn>dupload</prgn> est suffisamment intelligent pour déterminer
1698 où devra aller l'annonce et pour envoyer le courrier sur la bonne liste. Voir <ref
1704 <sect id="upload-notification">
1705 <heading>Notification de l'installation d'un nouveau paquet</heading>
1708 Les administrateurs de l'archive Debian sont responsables de l'installation
1709 des mises à jour. La plupart des mises à jour sont gérées
1710 quotidiennement par le logiciel de gestion de l'archive <prgn>katie</prgn>.
1712 de paquets sur la distribution <em>unstable</em>, en particulier, sont
1713 installés ainsi. Dans les autres cas et notamment dans le cas d'un nouveau
1714 paquet, celui-ci sera installé manuellement. Il peut s'écouler jusqu'à un mois
1715 entre le téléchargement d'un paquet vers un serveur et son installation
1716 effective. Soyez patients.
1719 Dans tous les cas vous recevrez un accusé de réception par courrier
1720 électronique indiquant que votre paquet a été installé et quels rapports
1721 de bogues ont été clos. Lisez attentivement ce courrier et vérifiez que tous
1722 les rapports de bogues que vous vouliez clore sont bien dans cette liste.
1725 L'accusé de réception indique aussi la section dans laquelle le paquet a
1726 été installé. S'il ne s'agit pas de votre choix, vous recevrez un second
1727 courrier qui vous informera de cette différence (voir plus loin).
1732 <sect1 id="override-file">Le fichier <em>override</em>
1735 Les champs <tt>Section</tt> et <tt>Priority</tt> du fichier
1736 <file>debian/control</file> n'indiquent ni où le paquet sera installé dans
1737 l'archive Debian ni sa priorité. Afin de conserver la
1738 cohérence de l'archive, ce sont les administrateurs qui contrôlent ces
1739 champs. Les valeurs du fichier <file>debian/control</file> sont juste des
1743 Les administrateurs de l'archive indiquent les sections et priorités des paquets
1744 dans le fichier <em>override</em>. Si ce fichier <em>override</em> et le
1745 fichier <file>debian/control</file> de votre paquet diffèrent, vous en serez
1746 informé par courrier électronique quand votre paquet sera installé dans
1747 l'archive. Vous pourrez corriger votre fichier <em>debian/control</em>
1748 avant votre prochain téléchargement ou alors vous aurez envie de modifier le
1749 fichier <em>override</em>.
1752 Pour modifier la section dans laquelle un paquet est archivé, vous devez
1753 d'abord vérifier que fichier <file>debian/control</file> est correct. Ensuite,
1754 envoyez un courrier à &email-override; ou un rapport de bogue sur le pseudo
1755 paquet <package>ftp.debian.org</package> demandant la modification de la
1756 section ou de la priorité de votre paquet. Exposez bien les raisons qui vous
1757 amènent à demander ces changements.
1760 Pour en savoir plus sur le fichier <em>override</em>, reportez-vous à <manref
1761 name="dpkg-scanpackages" section="8">, &file-bts-mailing; et &file-bts-info;.
1766 <chapt id="nmu">Mise à jour indépendante
1769 Dans certaines circonstances il est nécessaire qu'une personne autre que le
1770 responsable d'un paquet fasse une mise à jour de ce paquet. Ce type de mise à
1771 jour est désigné en anglais par l'expression <em>non-maintainer upload
1772 (NMU)</em>. Dans le présent document, nous traduisons librement cette
1773 expression par « mise à jour indépendante ».
1776 Ces mises à jour indépendantes font partie du travail normal des porteurs qui
1777 compilent les paquets pour d'autres architectures (voir <ref id="porting">).
1778 Nous faisons aussi des mises à jour indépendantes quand un développeur Debian
1779 corrige le paquet d'un autre développeur pour éliminer un trou de sécurité
1780 ou un bogue paralysant. Cela se produit plus particulièrement en période de
1781 gel de la distribution de développement ou quand le responsable officiel du
1782 paquet ne peut pas fournir une correction dans un délai raisonnable.
1785 Ce chapitre contient des informations qui vous expliqueront quand et comment
1786 faire des mises à jour indépendantes. Une distinction fondamentale doit être
1787 faite entre les mises à jour indépendantes sources et les mises à jour
1788 indépendantes binaires. Elle est explicitée dans la section suivante.
1791 <sect id="nmu-terms">Terminologie
1794 Deux nouvelles expressions sont introduites dans cette section :
1795 « mise à jour indépendante source » et « mise à
1796 jour indépendante binaire ». Ces expressions ont une définition
1797 précie dans le monde Debian. Elles correspondent toutes deux au même type
1798 d'activité ; elles impliquent toutes deux qu'une personne fait une mise à
1799 jour d'un paquet alors qu'elle n'est pas officiellement responsable de ce
1800 paquet. C'est pourquoi nous qualifions ces mises à jours
1801 d'<em>indépendantes</em><footnote>Contrairement à ce que pourrait laisser
1802 entendre cette traduction de <em>non-maintainer upload</em>, il n'est pas
1803 question d'agir sans prévenir le responsable au préalable (voir <ref
1804 id="nmu-guidelines">).</footnote>.
1807 Une mise à jour indépendante source est une livraison de paquet faite par
1808 une personne qui n'est pas le responsable officiel de ce paquet avec pour
1809 objectif de corriger un bogue dans le paquet. Une mise à jour indépendante
1810 source implique toujours une modification des sources du paquet, même s'il
1811 ne s'agit que d'un changement dans le fichier <file>debian/changelog</file>.
1812 Ce changement peut tout aussi bien concerner la partie amont du source que la
1813 partie spécifique à Debian. Une mise à jour indépendante source peut aussi
1814 inclure des paquets spécifiques à une architecture, un fichier <em>diff</em>
1815 modifié ou, plus rarement, des nouveaux sources amonts.
1818 Une mise à jour indépendante binaire est la recompilation et l'archivage
1819 d'un paquet pour une architecture donnée. Il s'agit souvent du résultat d'un
1820 effort de portage. Une mise à jour indépendante binaire est la livraison d'un
1821 paquet compilé (souvent pour une autre architecture) à condition que cette
1822 compilation n'ait pas nécessité de modifications des sources. Dans de
1823 nombreux cas, les porteurs
1824 sont obligés de modifier les sources pour les rendre compilables sur leur
1825 architecture cible ; il s'agira alors d'une mise à jour indépendante source et
1826 non d'une mise à jour indépendante binaire. Comme vous pouvez le remarquer,
1827 nous ne faisons pas de distinction entre les mises à jour indépendantes
1828 faites par des porteurs et les autres mises à jour indépendantes.
1831 Les mises à jour indépendantes sources et binaires sont toutes deux couvertes
1832 par l'expression « mise à jour indépendante »
1833 (NMU<footnote>Non-maintainer upload</footnote>). Pourtant cela conduit souvent
1834 à des confusions car beaucoup associent « mise à jour indépendante »
1835 et « mise à jour indépendante source ». Il faut donc rester
1836 vigilant. Dans ce chapitre, si nous utilisons « mise à jour
1837 indépendante » seul, il s'agit des deux types de livraisons.
1843 <sect id="nmu-who">Qui peut faire une mise à jour indépendante ?
1846 Seuls les responsables Debian officiels peuvent faire des mises à jour
1847 indépendantes. Un responsable officiel est une personne dont la clé est dans
1848 le porte-clés Debian. Toute personne est invitée à télécharger les paquets
1849 sources pour corriger des bogues ; au lieu de faire des mises à jour
1850 indépendantes, ils pourront soumettre les <em>patch</em> qui le méritent au
1851 système de suivi des bogues. Les responsables apprécient presque toujours les
1852 <em>patch</em> et les rapports de bogue soignés.
1855 <sect id="nmu-when">Quand faire une mise à jour indépendante source ?
1858 Les recommandations pour déterminer quand faire une mise à jour indépendante
1859 source dépendent de la distribution visée (i.e. stable, instable ou
1860 gelée). Les porteurs, ayant une activité particulière, obéissent à des règles
1861 légèrement différentes (voir <ref id="source-nmu-when-porter">).
1864 La distribution stable ne peut recevoir que des corrections critiques ou des
1865 mises à jour de sécurité. Quand une faille de sécurité est détectée, un
1866 paquet corrigé doit être livré le plus tôt possible. Dans ce cas, le responsable de
1867 sécurité Debian<footnote>Debian Security Manager</footnote> entrera en contact
1868 avec le responsable du paquet pour s'assurer qu'un paquet corrigé sera livré dans
1869 un délai raisonnable (moins de 48 heures). Si le mainteneur ne peut
1870 fournir une mise à jour suffisamment vite ou s'il ne peut être joint à temps, le
1871 responsable de sécurité pourra corriger le paquet (i.e. faire une mise à jour
1872 indépendante source).
1875 Pendant la phase de gel (voir <ref id="upload-frozen">), les livraisons qui
1876 corrigent les bogues de gravité <em>sérieuse</em> (i.e. <em>serious</em>) et
1877 supérieures sont encouragées et acceptées. Même pendant cette période, vous
1878 devrez tenter d'entrer en contact avec le responsable du paquet ; il pourrait
1879 bien être sur le point de livrer un paquet corrigé lui aussi. Comme pour
1880 n'importe quelle mise à jour indépendante source, les recommandations de la
1881 section <ref id="nmu-guidelines"> doivent être respectées.
1884 Les mises à jour indépendantes sont aussi acceptable pour la distribution
1885 instable mais seulement en dernier ressort
1886 ou avec une autorisation. Essayez d'abord ce qui suit et si cela ne fonctionne
1887 pas il est probablement correct de faire une mise à jour indépendante
1888 <em>(NMU)</em> :
1893 Vérifiez que le bogue est bien référencé dans le système de suivi des
1894 bogues. S'il n'y est pas, faites un rapport de bogue.
1897 Envoyez un courrier au responsable du paquet et proposez votre aide
1898 pour corriger le bogue. Donnez-lui quelques jours.
1901 Lancez-vous. Corrigez le bogue et envoyez votre <em>patch</em> au système de
1902 suivi des bogues. Construisez le paquet et testez-le comme décrit dans
1903 la section <ref id="upload-checking">. Utilisez le paquet chez vous.
1906 Attendez une réponse pendant quelques semaines.
1909 Envoyez un courrier au responsable lui demandant son accord pour faire
1910 une mise à jour indépendante <em>(NMU)</em>.
1913 Vérifiez une nouvelle fois que votre modification n'a pas d'effet de
1914 bord inattendu et qu'elle est aussi minimaliste et peu intrusive que
1918 Attendez une réponse une semaine encore.
1921 Faites votre mise à jour indépendante comme décrit dans la section
1922 <ref id="nmu-guidelines">.
1931 <sect id="nmu-guidelines">Comment faire une mise à jour indépendante
1935 Les règles qui suivent s'appliquent aux porteurs tant qu'ils jouent le double
1936 rôle de correcteur de bogue et de porteur. Si un porteur doit modifier le
1937 paquet source, cette mise à jour est automatiquement une mise à jour
1938 indépendante source et est soumise aux règles qui suivent. Si un porteur
1939 construit un paquet binaire recompilé, les règles sont différentes (voir <ref
1940 id="porter-guidelines">.
1943 Tout d'abord il est capital que ces mises à jour indépendantes soient aussi peu
1944 intrusives que possible. Ne faites pas de ménage, ne modifiez pas le nom des
1945 modules ou des fichiers, ne déplacez pas les répertoires ; plus généralement ne
1946 corrigez pas ce qui n'est pas cassé. Faites un <em>patch</em> aussi petit que
1947 possible. Si certaines choses froissent votre sens de l'esthétique, parlez-en
1948 au responsable du paquet, au responsable amont ou soumettez un rapport de
1949 bogue. Quoiqu'il en soit, les changements esthétiques <em>ne doivent pas</em>
1950 être faits lors d'une mise à jour indépendante.
1956 <sect1 id="nmu-version">Numéro de version pour les mises à jour
1957 indépendantes sources
1960 Chaque fois que vous modifiez un paquet, le numéro de version de ce paquet doit
1961 changer, même pour la plus triviale des modifications. Notre système de
1962 gestion de paquets s'appuie sur ces numéros de version.
1965 Si vous faites une mise à jour indépendante <em>(NMU)</em>, vous devez ajouter
1966 un numéro de version mineur à la partie <var>debian-revision</var> du numéro
1967 de version (la partie qui suit le dernier trait d'union). Ce numéro
1968 supplémentaire débutera à « 1 ». Prenons pour exemple le paquet
1969 « foo » qui porte le numéro de version 1.1-3. Dans l'archive, le
1970 fichier de contrôle du paquet source serait <file>foo_1.1-3.dsc</file>. La
1971 version amont est « 1.1 » et la révision Debian est « 3 ».
1972 La mise à jour indépendante suivante ajouterait le numéro de version mineur
1973 « .1 » au numéro de révision Debian; le nouveau fichier de contrôle
1974 du paquet source serait alors <file>foo_1.1-3.1.dsc</file>.
1977 Le numéro de révision mineur est nécessaire pour éviter de prendre un numéro
1978 de version au responsable officiel du paquet, ce qui pourrait perturber son
1979 travail. Cela a aussi l'avantage de montrer clairement que le paquet n'a pas
1980 été livré par le responsable officiel.
1983 S'il n'y a pas de partie <var>debian-revision</var> dans le numéro de version
1984 du paquet, il faut en créer une en démarrant à « 0.1 ». S'il est
1985 absolument nécessaire qu'une personne qui n'est pas responsable d'un paquet
1986 fasse une livraison basée sur une nouvelle version amont, cette personne
1987 doit choisir « 0.1 » comme numéro de révision Debian. Le mainteneur
1988 du paquet doit, lui, démarrer sa numérotation à « 1 ». Notez que pour
1989 faire cela vous devrez utiliser <prgn>dpkg-buildpackage</prgn> avec l'option
1990 <tt>-sa</tt> pour le forcer à utiliser le nouveau paquet source (par défaut il
1991 reconnaît les numéros de révisions « 0 » ou « 1 » — il
1992 n'est pas suffisamment intelligent pour reconnaître « 0.1 »).
1995 Attention, les porteurs qui ne font que recompiler les paquets pour d'autres
1996 architectures n'ont pas besoin de renuméroter les paquets. Les porteurs ne
1997 doivent utiliser de nouveaux numéros de version que s'ils modifient les
1998 paquets sources qu'ils recompilent, c'est-à-dire s'ils font une mise à jour
1999 indépendante source et non une mise à jour indépendante binaire.
2005 <sect1 id="nmu-changelog">
2006 <heading>Les mises à jour indépendantes sources doivent être
2007 mentionnées dans le fichier changelog</heading>
2010 Une personne qui fait une mise à jour indépendante source doit ajouter une
2011 entrée dans le fichier <file>changelog</file> qui indique les bogues corrigés
2012 et qui précise pourquoi cette mise à jour était nécessaire. Cette entrée
2013 comportera l'adresse de la personne ayant fait la mise à jour ainsi que la
2017 Par convention, dans le cas d'une mise à jour indépendante source
2018 <em>(NMU)</em>, l'entrée du fichier changelog débute par la ligne
2021 * Non-maintainer upload
2028 <sect1 id="nmu-patch">Mise à jour indépendante source et système
2032 Un développeur qui n'est pas responsable d'un paquet doit faire aussi peu de
2033 modifications que possible et doit toujours envoyer ses modifications au
2034 système de suivi des bogues au format diff unifié (<tt>diff -u</tt>).
2037 En cas de simple recompilation du paquet, le processus diffère
2038 suivant que vous agissez en tant que porteur ou pas. Si vous faites une mise
2039 à jour indépendante qui ne nécessite rien de plus qu'une recompilation et
2040 n'agissez pas en temps que porteur (i.e. une nouvelle bibliothèque partagée
2041 est disponible, un bogue a été corrigé dans <package>debhelper</package>),
2042 vous devez tout de même ajouter une entrée dans le fichier <em>changelog</em>;
2043 il y aura donc une modification. Si vous êtes porteur, vous êtes probablement
2044 en train de faire une mise à jour indépendante binaire. (Note : ce système ne
2045 tient pas compte des porteurs qui font des recompilations — tenez cela pour
2046 une faiblesse de notre système de gestion des paquets.)
2049 Si la mise à jour indépendante source corrige des bogues, vous devez le
2050 <em>notifier</em> au système de suivi des bogues mais vous ne devez pas
2051 <em>clore</em> les rapports de bogue. Seul le responsable officiel d'un paquet
2052 et le rapporteur du bogue sont autorisés à fermer un rapport de bogue.
2053 Cependant, la personne qui fait une mise à jour indépendante doit envoyer une
2054 note à chaque bogue concerné expliquant qu'il est corrigé par cette mise à
2055 jour indépendante. Cette personne doit ensuite utiliser l'adresse
2056 <email>control@bugs.debian.org</email> pour modifier la gravité des bogues
2057 corrigés et leur donner la valeur <em>corrigé</em> (i.e. <em>fixed</em>).
2058 Cela permet de s'assurer que chacun sait que le bogue est corrigé par une mise
2059 à jour indépendante tout en laissant le rapport de bogue ouvert jusqu'à ce que
2060 le responsable du paquet incorpore les modifications de cette mise à jour dans
2061 la version officielle du paquet. Si nécessaire, ouvrez des rapports de bogue
2062 avec les <em>patch</em> correspondants ou assurez-vous que l'un des rapports de
2063 bogue déjà ouverts comporte ces <em>patch</em>.
2066 Le responsable officiel pourra choisir d'appliquer le <em>patch</em>, il pourra aussi
2067 employer une autre méthode pour régler le problème. Certains bogues sont
2068 corrigés dans la version amont, ce qui est une bonne raison pour annuler les
2069 modifications d'une mise à jour indépendante. Si le responsable choisit de
2070 mettre à jour le paquet sans utiliser les <em>patch</em> de la mise à jour
2071 indépendante, il devra s'assurer que cette nouvelle version corrige
2072 effectivement chacun des bogues corrigés dans la mise à jour indépendante.
2075 De plus, le responsable officiel devrait <em>toujours</em> conserver les
2076 entrées documentant une mise à jour indépendante dans le fichier
2077 <file>changelog</file>.
2084 <sect1 id="nmu-build">Fabriquer une mise à jour indépendante source
2087 Les paquets faisant l'objet d'une mise à jour indépendante source sont
2088 construits comme les
2089 autres. Sélectionnez une distribution en utilisant les règles décrites dans
2090 la section <ref id="upload-dist"> et construisez un fichier <tt>.changes</tt>
2091 classique avec tout ce qui l'accompagne conformément à la description <ref
2095 En fait, toutes les prescriptions de la section <ref id="upload"> sont
2096 applicables ici, y compris l'obligation d'annoncer la mise à jour sur la liste
2100 Vérifiez que vous n'avez pas modifié la valeur du champ <tt>maintainer</tt>
2101 dans le fichier <file>debian/control</file>. Votre nom, mentionné dans
2102 l'entrée du fichier <file>debian/changelog</file> concernant la mise à jour,
2103 sera utilisé pour signer le fichier <tt>.changes</tt>.
2108 <chapt id="porting">Le portage
2111 Debian supporte un nombre croissant d'architectures. Même si vous n'êtes pas
2112 un porteur et même si vous n'utilisez qu'une architecture, il est de votre
2113 responsabilité de développeur d'être attentif aux questions de portabilité.
2114 C'est pourquoi il est important que vous lisiez ce chapitre même si vous
2115 n'êtes pas un porteur.
2118 Porter un paquet consiste à faire un paquet binaire pour une architecture
2119 différente de celle du paquet binaire fait par le responsable du paquet.
2121 activité remarquable et essentielle. En fait, les porteurs sont à l'origine
2122 de la plupart des compilations de paquet Debian. Pour un paquet binaire
2123 <em>i386</em>, par exemple, il faut compter une recompilation pour chaque
2124 autre architecture, soit un total de &number-of-arches; recompilations.
2129 <sect id="kind-to-porters">Être gentil avec les porteurs
2132 Les porteurs ont une tâche remarquable et difficile car ils doivent gérer un
2133 grand nombre de paquets. Idéalement, tout paquet source devrait compiler sans
2134 modification. Malheureusement, c'est rarement le cas. Cette section contient
2135 une liste d'erreurs commises régulièrement par les responsables Debian —
2136 problèmes courants qui bloquent souvent les porteurs et compliquent
2137 inutilement leur travail.
2140 Ici, le mot d'ordre est de répondre rapidement aux rapports de bogues et
2141 remarques soulevées par les porteurs. Traitez-les courtoisement, comme s'ils
2142 étaient co-responsables de vos paquets (ce qu'ils sont d'une certaine
2143 manière). Merci pour votre indulgence envers des rapports de bogues succincts ou
2144 peu clairs ; faites de votre mieux pour éliminer le problème.
2147 Les problèmes les plus couramment rencontrés par les porteurs sont causés par
2148 des erreurs de mise en paquet dans le paquet source. Voici une
2149 <em>checklist</em> de choses auxquelles vous devez être attentif :
2153 Vérifiez que les champs <tt>Build-Depends</tt> et
2154 <tt>Build-Depends-Indep</tt> du fichier <file>debian/control</file> sont
2155 corrects. Le meilleur moyen pour vérifier cela est d'utiliser le
2156 paquet <package>debootstrap</package> pour créer un environnement
2157 <em>unstable</em> <em>chrooté</em>. Dans cet environnement
2158 <em>chrooté</em> il faudra installer le paquet
2159 <package>build-essential</package> et tous les paquets mentionnés dans
2160 les champs <tt>Build-Depends</tt> et <tt>Build-Depends-Indep</tt>.
2161 Ensuite, vous essayerez de fabriquer votre paquet dans cette
2164 Consultez le <url id="&url-debian-policy;" name="Debian Policy
2165 Manual"> pour en savoir plus sur les dépendances de fabrication.
2167 Ne choisissez pas d'autre valeur que <em>all</em> ou <em>any</em> pour
2168 le champ architecture sans avoir de bonnes raisons pour le faire. Trop
2169 souvent, les développeurs ne respectent pas les instructions du
2170 <url id="&url-debian-policy;" name="Debian Policy Manual">. Choisir
2171 la valeur « i386 » est la plupart du temps incorrect.
2174 Vérifiez que votre paquet source est bon. Faites <tt>dpkg-source -x
2175 <var>package</var>.dsc</tt> pour vous assurer que le paquet se
2176 désarchive correctement. En utilisant le résultat de ce test,
2177 construisez votre paquet binaire à l'aide de la commande
2178 <tt>dpkg-buildpackage</tt>.
2181 Vérifiez que les fichiers <file>debian/files</file> et
2182 <file>debian/substvars</file> ne sont pas dans votre paquet source.
2183 Ils doivent être effacés par la cible <em>clean</em> de
2184 <file>debian/rules</file>.
2187 Assurez-vous que vous ne vous appuyez pas sur des éléments de
2188 configuration ou des logiciels installés ou modifiés localement. Par
2189 exemple, vous ne devriez jamais appeler des programmes du répertoire
2190 <file>/usr/local/bin</file> ou de répertoires équivalents. Essayez de ne pas vous
2191 appuyer sur des logiciels configurés de manière spéciale. Essayez de
2192 construire votre paquet sur une autre machine, même s'il s'agit de la
2196 Ne vous appuyez pas sur une installation préexistante de votre paquet
2197 (un sous-cas de la remarque précédente).
2200 Si possible, ne vous appuyez pas sur une particularité présente dans
2201 un compilateur précis ou dans certaine version d'un compilateur. Si
2202 vous ne pouvez pas faire autrement, assurez-vous que les dépendances
2203 de fabrication reflètent bien cette restriction. Dans ce cas, vous
2204 cherchez sûrement les problèmes car quelques architectures pourraient
2205 choisir un compilateur différent.
2208 Vérifiez que votre <file>debian/rules</file> distingue les cibles
2209 <em>binary-arch</em> et <em>binary-indep</em> comme l'exige le
2210 <em>Debian packaging manual</em>. Vérifiez que ces cibles sont
2211 indépendantes l'une de l'autre, c'est à dire qu'il n'est pas
2212 nécessaire d'invoquer l'une de ces cibles avant d'invoquer l'autre.
2213 Pour vérifier cela, essayez d'exécuter <tt>dpkg-buildpackage -b</tt>.
2220 <sect id="porter-guidelines">Instructions pour les mises à jour des
2224 Si le paquet se construit tel quel sur l'architecture que vous visez, vous avez
2225 de la chance et votre travail est facile. Cette section s'applique dans ce
2226 cas ; elle décrit comment construire et installer correctement votre mise à
2227 jour indépendante binaire dans l'archive Debian. Si vous devez modifier le
2228 paquet pour le rendre compilable sur votre architecture cible vous devez faire
2229 une mise à jour des sources, consultez la section <ref id="nmu-guidelines">.
2232 Pour une mise à jour indépendante binaire, ne faites pas de changement
2233 dans les sources. Vous n'avez pas besoin de modifier les fichiers du paquet
2234 source (cela inclut <file>debian/changelog</file>).
2237 La manière d'invoquer <prgn>dpkg-buildpackage</prgn> est la suivante :
2238 <tt>dpkg-buildpackage -B -e<var>adresse-porteur</var></tt>. Bien sûr,
2239 remplacez <var>adresse-porteur</var> par votre adresse électronique. Cette
2240 commande construira les portions du paquet qui dépendent de l'architecture, en
2241 utilisant la cible <em>binary-arch</em> de <file>debian/rules</file>.
2244 <sect1 id="recompile-nmu-versioning">
2245 <heading>Numéro de version des mises à jour indépendantes
2249 Parfois il est nécessaire de recompiler des paquets quand d'autres paquets,
2250 tels que les bibliothèques, ont été mis à jour. Dans ce cas, vous devez
2251 changer le numéro de version pour que le système de comparaison des numéros de
2252 version fonctionne correctement. Ce type de mise à jour reste une mise à jour
2253 indépendante binaire — il n'est pas nécessaire de reconsidérer le statut
2254 des paquets binaires des autres architectures pour les marquer périmés ou à
2258 Ces recompilations nécessitent des numéros de version « magiques » pour que le
2259 système de maintenance de l'archive comprennent que, bien qu'il y ait une
2260 nouvelle version, il n'y a pas eu de modification des sources. Si vous ne
2261 faites pas cela correctement, les administrateurs de l'archive rejetteront
2262 votre mise à jour (car il n'y aura pas de code source associé).
2265 Cette magie associée à une mise à jour par recompilation est déclenchée en
2266 utilisant un troisième nombre dans la partie debian du numéro de version. Si,
2267 par exemple, la dernière version du paquet que vous recompilez était
2268 « 2.9-3 », votre mise à jour portera le numéro
2269 « 2.9-3.0.1 ». Si cette version était « 3.4-2.1 » votre
2270 mise à jour portera le numéro « 3.4-2.1.1 ».
2275 <sect1 id="source-nmu-when-porter"> <heading>Quand faire une mise à
2276 jour indépendante source pour un portage ?</heading>
2279 Les porteurs qui font des mises à jour indépendantes sources suivent
2280 généralement les instructions de la section <ref id="nmu"> tout comme les
2281 non-porteurs. Les délais d'attente sont cependant plus courts car les porteurs
2282 doivent manipuler un grand nombre de paquets.
2285 À nouveau, la situation diffère selon la distribution visée. Une correction
2286 cruciale (i.e. rendre un paquet compilable sur une architecture supportée par
2287 la prochaine distribution) peut être installée <em>sans</em> délai pour la
2291 Si vous êtes porteur et faites une mise à jour pour <em>unstable</em>, les
2292 instructions précédentes sont applicables à deux différences près. Tout
2293 d'abord, le temps d'attente raisonnable — délai entre le moment où vous
2294 envoyez un rapport au système de suivi des bogues et le moment où vous pouvez
2295 faire une mise à jour indépendante <em>(NMU)</em> — est de sept jours. Ce
2296 délai peut être raccourci si le problème est crucial et met l'effort de
2297 portage en difficulté : c'est à la discrétion de l'équipe de portage.
2298 (Souvenez-vous, il ne s'agit pas d'un règlement mais de recommandations
2299 communément acceptées).
2302 Deuxième différence, les porteurs qui font des mises à jour indépendantes
2303 sources doivent choisir une gravité <em>sérieuse</em> (i.e.
2304 <em>serious</em>) ou supérieure quand ils envoient leur rapport au système de
2305 suivi des bogues. Ceci assure qu'un paquet source unique permet de produire un
2306 paquet binaire pour chaque architecture supportée au moment de la sortie de la
2307 distribution. Il est très important d'avoir un paquet source et un paquet
2308 binaire pour toutes les architectures pour être conforme à plusieurs licences.
2311 Les porteurs doivent éviter d'implémenter des contournements pour
2312 des bogues de l'environnement de compilation, du noyau ou de la libc. Quelques
2313 fois ces contournements sont inévitables. Si vous devez faire quelque chose de
2314 ce genre, marquez proprement vos
2315 modifications avec des <tt>#ifdef</tt> et documentez votre contournement pour
2316 que l'on sache le retirer une fois que le problème aura disparu.
2319 Les porteurs peuvent aussi avoir une adresse où ils publient le résultat de
2320 leur travail pendant le délai d'attente. Ainsi d'autres personnes peuvent
2321 bénéficier du travail du porteur même pendant ce délai. Bien sûr ces adresses
2322 n'ont rien d'officiel alors soyez sur vos gardes si vous les utilisez.
2327 <sect>Outils pour les porteurs
2330 Il y a plusieurs outils pour le travail de portage. Cette section contient
2331 une courte description de ces outils ; reportez-vous à la documentation de
2332 leurs paquets ou aux références citées ci-après pour une description complète.
2337 <sect1 id="quinn-diff">
2338 <heading><package>quinn-diff</package>
2341 <package>quinn-diff</package> est utilisé pour localiser les différences d'une
2342 architecture à l'autre. Il pourrait vous dire, par exemple, quels paquets de
2343 l'architecture <var>X</var> doivent être portés sur l'architecture <var>Y</var>.
2350 <heading><package>buildd</package>
2353 Le système <package>buildd</package> est un système distribué pour la
2354 compilation d'une distribution. Il est habituellement utilisé en conjonction
2355 avec des automates de compilation ; ce sont des machines « esclaves »
2356 qui récupèrent des paquets sources et tentent de les compiler. Il est aussi
2357 possible d'interagir par courrier électronique avec ce système. Cette
2358 interface est utilisée par les porteurs pour récupérer un paquet source (en
2359 général un paquet qui ne peut être compilé automatiquement) et travailler
2363 <package>buildd</package> n'est pas disponible sous forme de paquet ;
2364 pourtant, la plupart des équipes de porteurs l'utilisent aujourd'hui ou ont prévu
2365 de l'utiliser bientôt. Il regroupe un ensemble de composants très utiles,
2366 continuellement utilisés mais non encore mis en paquet, tels que
2367 <prgn>andrea</prgn>, <prgn>sbuild</prgn> et <prgn>wanna-build</prgn>.
2370 Une partie des informations produites par <package>buildd</package> — utiles
2371 pour les porteurs — est disponible sur la toile à l'adresse <url
2372 id="&url-buildd;">. Ces informations incluent les résultats produits toutes
2373 les nuits par <prgn>andrea</prgn> (dépendances des sources) et
2374 <prgn>quinn-diff</prgn> (paquets à recompiler). <p> Nous sommes très
2375 enthousiasmés par ce système car il a de nombreux usages potentiels. Des
2376 groupes de développeurs indépendants peuvent utiliser ce système pour créer
2377 différentes saveurs de la Debian — qui peuvent être ou ne pas être
2378 intéressantes pour tous (une version de Debian compilée avec des vérifications
2379 relatives à <prgn>gcc</prgn>). Ce système nous permettra aussi de recompiler
2380 rapidement toute une distribution.
2385 <sect1 id="dpkg-cross">
2386 <heading><package>dpkg-cross</package>
2389 <package>dpkg-cross</package> est un outil qui installe les bibliothèques et
2390 les entêtes nécessaires à une compilation croisée<footnote><em>cross-compilation</em>
2391 </footnote> d'une manière similaire à <package>dpkg</package>. De plus
2392 <prgn>dpkg-buildpackage</prgn> et <prgn>dpkg-shlibdeps</prgn> ont été
2393 améliorés pour supporter les compilations croisées.
2399 <chapt id="archive-manip">
2400 <heading>Déplacer, effacer, renommer, adopter et abandonner des
2404 Certaines manipulations de l'archive ne sont pas accessibles avec le processus
2405 de mise à jour automatisé. Elles sont appliquées manuellement par les
2406 développeurs. Ce chapitre décrit ce qu'il faut faire dans ces situations.
2411 <sect>Déplacer des paquets
2414 Parfois un paquet pourra changer de section. Une nouvelle version d'un paquet
2415 de la section <tt>non-free</tt> pourrait par exemple être distribuée sous
2416 licence LGP GNU ; dans ce cas le paquet doit être déplacé dans la section
2417 <tt>main</tt> ou <tt>contrib</tt><footnote> Reportez-vous au <url
2418 id="&url-debian-policy;" name="Debian Policy Manual"> pour savoir dans quelle
2419 section un paquet doit être classé.</footnote>.
2422 Si vous avez besoin de modifier la section de l'un de vos paquets, modifiez
2423 les informations de contrôle du paquet pour le placer dans la section désirée
2424 et téléchargez à nouveau votre paquet dans l'archive. Reportez-vous au
2425 <url id="&url-debian-policy;" name="Debian Policy Manual"> pour en savoir
2426 plus. Lisez attentivement le rapport d'installation qui vous sera envoyé lors
2427 de l'archivage de votre paquet. Si pour une raison ou une autre le paquet
2428 est toujours à son ancien emplacement, envoyez un rapport de bogue sur le
2429 pseudo-paquet <tt>ftp.debian.org</tt> demandant la suppression dudit paquet.
2430 Décrivez précisément vos manipulations car il pourrait s'agir d'un bogue dans
2431 le logiciel de gestion de l'archive.
2434 Si vous avez besoin de modifier la sous-section de l'un de vos paquets
2435 (<tt>devel</tt> ou <tt>admin</tt> par exemple) la procédure est légèrement
2436 différente. Modifiez la sous-section dans le fichier de contrôle de votre
2437 paquet et téléchargez-le. Il vous faudra ensuite demander la modification du
2438 fichier <em>override</em> comme décrit dans la section <ref
2439 id="override-file">.
2444 <sect id="removing-pkgs">Supprimer des paquets
2447 Si pour une raison ou une autre vous avez besoin de supprimer un paquet
2448 de l'archive (disons qu'il s'agit d'une vieille bibliothèque devenue inutile,
2449 que l'on conservait pour des raisons de compatibilité), il vous faudra
2450 envoyer un rapport de bogue concernant le pseudo-paquet
2451 <tt>ftp.debian.org</tt> et demandant sa suppression. N'oubliez pas de
2452 préciser de quelle distribution le paquet doit être supprimé.
2455 Si vous ne savez pas bien si un paquet peut être supprimé, demandez l'avis des
2456 autres développeurs sur la liste &email-debian-devel;. Le programme
2457 <prgn>apt-cache</prgn> du paquet <package>apt</package> pourra aussi vous être
2458 utile. La commande <tt>apt-cache showpkg <var>package</var> </tt> vous
2459 indiquera, entre autres, les paquets qui dépendent de <var>package </var>.
2461 <sect1>Supprimer des paquets dans <tt>Incoming</tt>
2463 Si vous décidez de supprimer un paquet de la section <tt>Incoming</tt>, il
2464 serait gentil de l'annoncer sur la liste de diffusion appropriée
2465 (&email-debian-changes; ou &email-debian-devel-changes;). Ce n'est pas
2470 <sect>Remplacer ou renommer un paquet
2473 Il peut vous arriver de vous tromper en nommant un paquet et avoir besoin de le
2474 renommer. Dans ce cas, vous devrez intervenir en deux étapes. D'abord,
2475 modifiez votre fichier <file>debian/control</file> pour que votre paquet
2476 renommé remplace et entre en conflit avec le nom de paquet que vous voulez
2477 remplacer. Reportez-vous au <url id="&url-debian-policy;" name="Debian Policy
2478 Manual"> pour les détails. Une fois que votre paquet est installé dans
2479 l'archive, faites un rapport de bogue concernant le pseudo-paquet
2480 <tt>ftp.debian.org</tt> et demandant la suppression du paquet mal nommé.
2481 l'archive, faites un rapport de bogue concernant le pseudo-paquet
2482 <tt>ftp.debian.org</tt> et demandant la suppression du paquet mal nommé.
2488 <sect id="orphaning">Abandonner un paquet
2491 Si vous ne pouvez plus maintenir un paquet, vous devez en informer les autres
2492 et faire le nécessaire pour qu'il soit marqué <em>abandonné</em>(i.e.
2493 <em>orphaned</em>). Vous devriez aussi remplacer votre nom par <tt>Debian QA
2494 Group &orphan-address;</tt> dans le champ
2495 <tt>maintainer</tt> du paquet et faire un rapport de bogue sur le
2496 pseudo-paquet <tt>wnpp</tt>. Le titre de votre rapport de bogue devra être
2497 « <tt>O<footnote><em>Orphaned</em> : abandonné.</footnote>:
2498 <var>paquet</var> — <var>courte description</var></tt> » pour indiquer
2499 que le paquet est orphelin. La gravité du bogue sera <em>normale</em>.
2500 Si vous le jugez nécessaire, envoyez une copie à
2501 &email-debian-devel; en mettant cette adresse dans le champ X-Debbugs-CC: de
2502 l'en-tête du message. N'utilisez pas le champ CC: car de cette manière le
2503 sujet du message ne contiendra pas le numéro du bogue.
2506 Si le paquet est particulièrement important pour la distribution il vous
2507 faudra faire un rapport de bogue sur le pseudo-paquet <tt>wnpp</tt>, titrer
2508 « <tt>RFA<footnote><em>Request For Adoption</em> : offre
2509 d'adoption.</footnote>: <var>paquet</var> — <var>courte
2510 description</var></tt> » et lui affecter la gravité <em>importante</em>.
2511 Envoyez une copie de votre rapport de bogue à la liste debian-devel comme
2512 décrit précédemment.
2515 Reportez-vous à la page WNPP<footnote><em>Work-needing and prospective
2516 packages</em> : paquets en souffrance et paquets souhaités.</footnote> <url
2517 id="&url-wnpp;"> pour en savoir plus.
2523 <sect id="adopting">Adopter un paquet
2526 Une liste des paquets en attente de nouveau responsable est disponible à la
2527 page <url id="&url-wnpp;" name="Work-Needing and Prospective Packages">. Si
2528 vous voulez prendre en charge un paquet de cette liste reportez-vous à la page
2529 susmentionnée pour connaître la procédure à suivre.
2532 Prendre un paquet parce qu'il vous semble que celui-ci est négligé n'est pas
2533 correct — ce serait une prise d'otage. Vous pouvez prendre contact avec le
2534 responsable actuel et lui demander si vous pouvez prendre en charge ce paquet.
2535 Vous ne pouvez le faire sans son accord. Qu'il vous ignore n'est pas une
2536 raison suffisante pour le faire. Si vous avez le sentiment qu'un responsable
2537 est parti sans prévenir depuis un moment, demandez-le sur la liste
2538 &email-debian-private;.
2541 Si vous reprenez un vieux paquet, vous voudrez sûrement que le système de
2542 suivi des bogues indique que vous êtes le responsable du paquet. Cela se
2543 produira automatiquement une fois que vous aurez installé une nouvelle version
2544 du paquet dans l'archive avec le champ <tt>Maintainer</tt> à jour. Cela peut
2545 prendre quelques heures après le téléchargement. Si vous pensez ne pas avoir
2546 de mise à jour à faire pour un moment, envoyez un courrier électronique à
2547 &email-override; pour pouvoir recevoir les rapports de bogue.
2553 <chapt id="bug-handling">Gérer les bogues
2557 <sect>Superviser les rapports de bogues
2560 Si vous voulez être un bon responsable, vous devrez consulter régulièrement la
2561 page du <url id="&url-bts;" name="système de suivi des bogues">. Cette page
2562 contient tous les rapports de bogue qui concernent vos paquets.
2565 Les responsables interagissent avec le système de suivi des bogues en
2566 utilisant l'adresse électronique <tt>bugs.debian.org</tt>. Vous trouverez une
2567 documentation sur les commandes disponibles à l'adresse <url id="&url-bts;">
2568 ou, si vous avez installé le paquet <package>doc-debian</package>, dans les
2569 fichiers locaux <file>/usr/share/doc/debian/bug-*</file>.
2572 Certains trouvent utile de recevoir régulièrement une synthèse des rapports de
2573 bogues ouverts. Si vous voulez recevoir une synthèse hebdomadaire relevant
2574 tous les rapports de bogue ouverts pour vos paquets, vous pouvez configurer
2575 <prgn>cron</prgn> comme suit :
2579 # Synthèse hebdomadaire des rapports de bogue qui me concernent
2580 0 17 * * fri echo "index maint <var>adresse</var>" | mail request@bugs.debian.org
2584 Remplacez <var>adresse</var> par votre adresse officielle de responsable
2590 <sect id="submit-bug">Ouvrir un rapport de bogue
2593 En tant que responsable Debian, vous trouvez des bogues dans d'autres paquets
2594 En tant que responsable Debian, vous trouvez des bogues dans d'autres paquets,
2595 ou bien vous voulez réassigner à d'autres paquets des rapports de bogue
2596 concernant vos paquets. La page d'aide du <url id="&url-bts-control;"
2597 name="système de suivi des bogues"> vous explique comment procéder.
2600 Nous vous encourageons à ouvrir des rapports de bogue s'il y a des problèmes.
2601 Essayez de soumettre ces rapports depuis un compte utilisateur où vous pouvez
2602 recevoir du courrier. Ne les envoyez pas en tant que <em>root</em>.
2605 Vérifiez que le bogue n'a pas encore été déclaré. Essayez de faire un travail
2606 propre en déclarant le bogue et en l'envoyant à la bonne adresse.
2609 Pour faire encore mieux, vous pouvez consulter d'autres paquets, grouper les
2610 bogues qui ont été rapportés plusieurs fois ou affecter la gravité
2611 <em>corrigé</em> (i.e. <em>fixed</em>) à un rapport dont le bogue a été
2612 corrigé. Attention, quand vous n'êtes ni le rapporteur d'un bogue ni le
2613 responsable du paquet vous ne devez pas clore le rapport (à moins que vous
2614 n'ayez l'autorisation du responsable).
2619 <sect>Répondre à des rapports de bogues
2622 Assurez-vous que toutes vos discussions concernant les bogues sont envoyées au
2623 rapporteur du bogue et au bogue lui-même (<email>123@bugs.debian.org</email>
2627 Vous ne devez <em>jamais</em> fermer un rapport de bogue en envoyant la
2628 commande <em>close</em> à l'adresse :
2631 <tt> &email-bts-control;</tt>
2634 Si vous le faites, le rapporteur n'aura aucun retour sur la clôture de son
2640 <sect id="upload-bugfix">Quand les rapports sont fermés par une
2644 Si vous corrigez un bogue dans vos paquets, il est de votre responsabilité de
2645 fermer le rapport de bogue associé. Pourtant vous ne devez pas le fermer avant
2646 que le paquet n'ait été accepté dans l'archive Debian. C'est pourquoi, vous
2647 pouvez et vous devez clore le rapport dans le système de suivi des bogues une
2648 fois que vous avez reçu l'avis indiquant que votre nouveau paquet a été
2649 installé dans l'archive.
2652 Si vous utilisez une version récente de <package>dpkg-dev</package> et que
2653 vous remplissez convenablement le fichier <file>changelog</file>, le logiciel de
2654 maintenance de l'archive fermera les rapports de bogue automatiquement. Tout ce
2655 que vous avez à faire est de respecter la syntaxe suivante dans votre fichier
2656 <file>debian/changelog</file> :
2658 acme-cannon (3.1415) unstable; urgency=low
2660 * Frobbed with options (closes: Bug#98339)
2661 * Added safety to prevent operator dismemberment, closes: bug#98765,
2663 * Added manpage. Closes: #98725.
2666 Techniquement parlant, l'expression régulière suivante est utilisée :
2668 /closes:\s*(?:bug)?\#\s*\d+(?:,\s*(?:bug)?\#\s*\d+)*/ig
2671 L'auteur préfère la syntaxe <tt>(closes: Bug#<var>XXX</var>)</tt>, car elle
2672 est facilement repérable dans le fichier <file>changelog</file>.
2675 Si vous voulez fermer un rapport de bogue manuellement — à l'ancienne — il
2676 suffit d'envoyer le fichier <tt>.changes</tt> à l'adresse
2677 <email>XXX-done@bugs.debian.org</email> où <var>XXX</var> est le numéro du
2683 <sect id="lintian-reports">Les rapports Lintian
2686 Vous devriez récupérer la dernière version de <package>lintian</package>
2687 depuis <em>unstable</em> régulièrement et vérifier tous vos paquets. Vous
2688 pouvez aussi chercher votre adresse électronique dans la page de <url
2689 id="&url-lintian;" name="rapport lintian">. Cette page, mise à jour
2690 automatiquement, contient les rapports lintian concernant la
2691 dernière version de la distribution (en général <em>unstable</em>) générés
2692 avec la dernière version de <package>lintian</package>.
2698 <sect>Ouvrir un grand nombre de rapports d'un seul coup
2701 Ouvrir un grand nombre de rapports pour le même problème sur un grand nombre de
2702 paquet — plus de dix — est une pratique que nous déconseillons. Prenez
2703 toutes les mesures possibles pour éviter cette situation. Si le problème peut
2704 être détecté automatiquement par exemple, ajoutez un nouveau test dans le
2705 paquet <package>lintian</package> pour générer une erreur ou un avertissement.
2708 Si vous ouvrez plus de dix rapports sur le même sujet, il est préférable
2709 d'indiquer votre intention sur la liste &email-debian-devel;. Cela donnera à
2710 d'autres développeurs la possibilité de vérifier que le problème existe
2711 vraiment. De plus, cela permet d'éviter que plusieurs responsables ne rédigent
2712 les mêmes rapports de bogue simultanément.
2715 Quand vous envoyez un grand nombre de rapports sur le même sujet, vous devriez
2716 les envoyer à <email>maintonly@bugs.debian.org</email> pour qu'ils ne soient
2717 pas redirigés vers les listes de diffusions.
2723 <chapt id="newmaint">
2724 <heading>Interaction avec les nouveaux responsables</heading>
2727 Ce chapitre décrit les procédures que doivent suivre les responsables
2728 Debian quand ils ont affaire à un futur responsable Debian.
2730 <sect>Parrainer un paquet
2732 Parrainer un paquet signifie télécharger un paquet dans l'archive Debian pour
2733 un responsable qui n'est pas capable de le faire lui-même : un futur
2734 responsable. Parrainer un paquet signifie aussi assumer la responsabilité de
2738 Les nouveaux responsables éprouvent souvent quelques difficultés pour créer
2739 des paquets Debian — ce qui est bien compréhensible. C'est là que le parrain
2740 intervient. Il doit vérifier que le paquet est suffisamment bon pour intégrer
2741 la distribution. Notez que si le paquet est nouveau les administrateurs FTP
2742 devront eux aussi inspecter ce paquet avant de le laisser entrer.
2745 Parrainer un paquet en se contentant de recompiler le paquet ou de signer le
2746 téléchargement <strong>n'est franchement pas recommandé</strong>. Vous devez
2747 reconstruire le paquet source comme vous le feriez avec vos propres paquets.
2748 N'oubliez pas qu'il sera possible de voir que vous avez téléchargé un paquet
2749 même si vous avez laissé le nom du futur responsable dans les fichiers de
2750 contrôle et changelog.
2753 Si vous êtes responsable de candidature<footnote>Application
2754 manager</footnote> pour un développeur, vous pouvez aussi être son parrain. De
2755 cette manière, vous aurez la possibilité de vérifier vous-même comment ce
2756 candidat accomplit la partie « Tâches et compétences »<footnote>`Tasks and
2757 Skills'</footnote> de sa candidature.
2761 <sect>Aider un nouveau responsable
2764 Consultez la page <url id="&url-newmaint-advocate;" name="Aider un futur
2765 responsable"> sur le site du projet Debian.
2769 <sect>Suivre la candidature d'un nouveau responsable
2772 Consultez la page <url id="&url-newmaint-amchecklist;" name="Aide mémoire du
2773 responsable de candidature"> sur le site du projet Debian.
2780 <chapt id="tools">Aperçu des outils du responsable Debian
2783 Cette section contient un aperçu rapide des outils dont dispose le responsable.
2784 Ces outils sont faits pour améliorer le confort des responsables et pour
2785 libérer leur temps pour des tâches cruciales.
2788 Certaines personnes préfèrent utiliser des outils de haut niveau, d'autres pas.
2789 Debian n'a pas de position officielle sur la
2790 question ; tout outil conviendra du moment qu'il fait le boulot. C'est pourquoi
2791 cette section n'a pas été conçue pour indiquer à chacun
2792 quel outil il devrait utiliser ou comment il devrait faire pour gérer sa
2793 charge de responsable Debian. Elle n'est pas non plus destinée à
2794 favoriser l'usage d'un outil aux dépens d'un autre.
2797 La plupart des descriptions de ces outils proviennent des descriptions de
2798 leurs paquets. Vous trouverez plus d'information dans les
2799 documentations de ces paquets.
2803 <sect id="dpkg-dev">
2804 <heading><package>dpkg-dev</package>
2807 Le paquet <package>dpkg-dev</package> contient les outils (y compris
2808 <prgn>dpkg-source</prgn>) nécessaires pour déballer, fabriquer et livrer des
2809 paquets Debian source. Ces utilitaires fournissent les fonctionnalités de bas
2810 niveau indispensables pour créer et manipuler les paquets ; en tant que tels,
2811 ils sont indispensables à tout responsable Debian.
2817 <heading><package>lintian</package>
2820 <package>lintian</package> dissèque les paquets pour y repérer des bogues et
2821 des manquements aux règles de développement. Il contient des tests automatisés pour
2822 vérifier de nombreuses règles et quelques erreurs courantes. L'utilisation de
2823 <package>lintian</package> a déjà été discutée dans <ref id="upload-checking">
2824 et <ref id="lintian-reports">.
2827 <heading><package>debconf</package></heading>
2830 Le paquet <package>debconf</package> fournit une interface consistante pour
2831 configurer les paquets interactivement. Il est indépendant de l'interface et
2832 permet une configuration en mode texte, par une interface HTML ou par boîtes
2833 de dialogues. D'autres types d'interface peuvent être ajoutés sous forme
2837 Beaucoup pensent que ce système devrait être utilisé pour tout paquet
2838 nécessitant une configuration interactive. <package>debconf</package> n'est
2839 pas requis par le <em>Debian Policy Manual</em> pour le moment ; cela
2840 pourra changer dans le futur.
2843 <sect id="debhelper">
2844 <heading><package>debhelper</package>
2847 Le paquet <package>debhelper</package> regroupe un ensemble de programmes qui
2848 peuvent être utilisés dans <file>debian/rules</file> pour automatiser les
2849 tâches courantes relatives à la fabrication des paquets Debian binaires. Ce
2850 paquet contient des utilitaires pour installer différents fichiers, les
2851 compresser, ajuster leurs droits et intégrer votre paquet dans le
2852 système de menu Debian.
2855 Au contraire de <package>debmake</package>, <package>debhelper</package> est
2856 divisé en plusieurs petits utilitaires qui agissent de manière cohérente.
2857 Ce découpage permet un contrôle des opérations plus fin que
2858 <package>debmake</package>.
2864 <heading><package>debmake</package>
2867 <package>debmake</package> — un précurseur de <package>debhelper</package> —
2868 est un assistant moins modulaire pour manipuler le fichier
2869 <file>debian/rules</file>. Il inclut deux programmes principaux :
2870 <prgn>deb-make</prgn>, utile au développeur Debian pour convertir un paquet
2871 source normal (non-Debian) en paquet source Debian, et <prgn>debstd</prgn> qui
2872 regroupe le type de fonction que l'on trouve dans
2873 <package>debhelper</package>.
2876 Le consensus actuel est que l'usage de <package>debmake</package> est
2877 déconseillé au profit de <package>debhelper</package> mais ce n'est pas une
2878 erreur d'utiliser <package>debmake</package>.
2883 <heading><package>yada</package>
2886 Le paquet <package>yada</package> est un nouvel assistant pour la création de
2887 paquets qui a une approche légèrement différente. Il utilise un fichier
2888 <file>debian/packages</file> pour générer d'autres fichiers nécessaires dans
2889 le sous-répertoire <file>debian/</file>.
2892 Remarque : <package>yada</package> est encore jeune et probablement moins
2893 robuste que ses aînés.
2898 <heading><package>equivs</package>
2901 <package>equivs</package> est un autre paquet pour faire des paquets. Il est
2902 souvent conseillé pour un usage local, si vous avez besoin de faire un paquet
2903 pour satisfaire des dépendances. Il est aussi parfois utilisé pour faire des
2904 « méta-paquets » qui sont des paquets dont l'unique objet est de
2905 dépendre d'autres paquets.
2909 <sect id="cvs-buildpackage">
2910 <heading><package>cvs-buildpackage</package>
2913 Le paquet <package>cvs-buildpackage</package> permet de mettre à jour ou
2914 récupérer des paquets sources dans un référentiel CVS, il permet de fabriquer
2915 un paquet Debian depuis le référentiel CVS et il assiste le développeur lors
2916 de l'intégration de modifications amont dans le référentiel.
2919 Ce paquet fournit l'infrastructure facilitant l'utilisation de CVS
2920 pour le responsable. Il permet de conserver des branches CVS distinctes
2921 pour les distributions <em>stable</em>, <em>unstable</em> et probablement
2922 <em>experimental</em>.
2926 <heading><package>dupload</package>
2929 Le paquet <package>dupload</package> contient un script du même nom pour
2930 mettre à jour des paquets dans l'archive Debian, tracer ces mises à jour et
2931 les annoncer par courrier électronique automatiquement. Vous pouvez le
2932 configurer pour faire des mises à jour à d'autres endroits et avec d'autres
2936 Note : l'annonce d'une mise à jour est maintenant prise en charge par le logiciel
2937 de gestion de l'archive. <package>dupload</package> doit être configuré
2938 pour ne plus envoyer de courrier (voir <ref id="upload-announce">).
2940 <sect id="fakeroot">
2941 <heading><package>fakeroot</package>
2944 <package>fakeroot</package> simule les privilèges <em>root</em>. Cela permet
2945 de fabriquer un paquet sans être root (en général les paquets installent des
2946 fichiers appartenant à <em>root</em>). Si vous avez installé
2947 <package>fakeroot</package> vous pouvez par exemple écrire
2948 <tt>dpkg-buildpackage -rfakeroot</tt> en tant qu'utilisateur.
2952 <sect id="devscripts">
2953 <heading><package>devscripts</package>
2956 Le paquet <package>devscripts</package> contient quelques scripts et outils
2957 que vous trouverez peut-être utiles pour maintenir vos paquets Debian. Parmi
2958 ces scripts, vous trouverez <prgn>debchange</prgn> qui manipule votre fichier
2959 <file>debian/changelog</file> depuis la ligne de commande et
2960 <prgn>debuild</prgn> qui est construit au-dessus de
2961 <prgn>dpkg-buildpackage</prgn>.
2967 <heading><package>debget</package>
2970 Le paquet <package>debget</package> contient un script qui peut être utile
2971 pour télécharger des paquets depuis l'archive Debian. Vous pouvez par exemple
2972 l'utiliser pour télécharger des paquets sources.
2985 <!-- Keep this comment at the end of the file
2990 sgml-minimize-attributes:nil
2991 sgml-always-quote-attributes:t
2993 sgml-indent-data:nil
2994 sgml-parent-document:nil
2995 sgml-exposed-tags:nil
2996 sgml-declaration:nil
2997 sgml-local-catalogs:nil
2998 sgml-local-ecat-files:nil
3001 <!-- vim:set tw=78:ts=8: -->