[RFR] ddp://manuals/debian-faq/fr/pkg_basics.sgml
Voici la traduction de pkg_basics.sgml
Merci d'avance pour vos relectures.
--
Simon Paillard
<!-- Subversion revision of original English document "5004" -->
<chapt id="pkg_basics">Les bases du syst� de gestion des paquets Debian
<p>Ce chapitre touche aux m�nismes internes de bas niveau du syst� de
gestion de paquets Debian. Si vous �e avant tout int�ss�par
l'<em>utilisation</em> des outils appropri� passez au chapitres <ref
id="pkgtools"> et <ref id="uptodate">.
<sect id="package">Qu'est ce qu'un paquet Debian ?
<p>Les paquets contiennent g�ralement tous les fichiers n�ssaires pour
impl�nter un ensemble de commandes ou de fonctionnalit�
<p>Il y a deux sortes de paquets Debian :
<list>
<item><em>Les paquets binaires</em> contenant les ex�tables, les fichiers
de configuration, les pages de manuel ou d'info, les informations de copyright
et d'autres documentations. Ces paquets sont distribu�sous un format d'archive
sp�fique �ebian (voir <ref id="deb-format">). Ils sont habituellement reconnaissables
par l'extension � .deb �. Ils peuvent �e install�en utilisant l'utilitaire
<tt>dpkg</tt> (�ntuellement avec une interface comme <prgn/aptitude/)�;
vous trouverez plus de d�ils dans les pages de manuel.
<item><em>Les paquets sources</em> sont constitu�d'un fichier <tt>.dsc</tt> d�ivant
le paquet source (incluant le nom des fichiers suivants), un fichier <tt>.orig.tar.gz</tt>
contenant les sources originales non modifi�au format tar compress�t habituellement un
fichier <tt>.diff.gz</tt> contenant les modifications sp�fiques �ebian par rapport au source
original. L'utilitaire <tt>dpkg-source</tt> permet l'archivage et le d�rchivage des sources
Debian vous trouverez plus de d�ils dans les pages de manuel.
(Le programme <prgn/apt-get/ peut �e utilis�omme une interface pour <tt>dpkg-source</tt>.)
</list>
<p>L'installation de logiciels par le syst� de paquet utilise les d�ndances qui
sont d�nies avec attention par le responsable du paquet. Ces d�ndances sont
document� dans le fichier <tt>control</tt> associ� chaque paquet. Par exemple,
le paquet du compilateur GNU C (<package/gcc/) d�nd du paquet <package/binutils/ qui
contient l'�teur de lien et l'assembleur. Si un utilisateur essaye d'installer <package/gcc/
sans avoir pr�ablement install�package/binutils/, le syst� de gestion de paquets (dpkg)
renverra un message d'erreur disant qu'il a aussi besoin de <package/binutils/ et arr�ra
l'installation de <package/gcc/. (Cependant ceci peut �e forc�ar un utilisateur insistant,
voir <manref name="dpkg" section="8">). Pour plus d'informations, voir <ref id="depends"> plus
loin.
<p>Les outils de gestion de paquets Debian peuvent �e utilis�pour :
<list>
<item>manipuler ou administrer les paquets ou une partie des paquets,
<item>administrer les modifications locales (��overrides��) des fichiers d'un paquets,
<item>aider les d�loppeurs dans la construction de paquets et
<item>aider les utilisateurs dans l'installation de paquets r�dant sur un serveur
FTP distant.
</list>
<sect id="deb-format">Quel est le format d'un paquet binaire Debian ?
<p>Un paquet Debian ou un fichier d'archive Debian, contient les fichiers ex�tables,
les biblioth�es, et la documentation li��ne suite particuli� de programme ou �un ensemble de programmes. Normalement, un fichier archive Debian a un nom se terminant
par <tt>.deb</tt>.
<p>Les m�nismes internes du format des paquets binaires Debian sont d�its dans la page
de manuel de <manref name="deb" section="5">. Ce format interne est susceptible de changer
(entre chaque version principale de &debian;), donc utilisez toujours
<manref name="dpkg-deb" section="1"> si vous avez besoin d'effectuer des op�tions de
bas niveau sur des fichiers <tt>.deb</tt>.
<sect id="pkgname">Pourquoi les noms des paquets Debian sont-ils si longs ?
<p>Le nom des paquets binaires Debian se conforme �a convention suivante :
<foo>_<Num�Version>-<Num�R�sionDebian>_<DebianArchitecture>.deb
<p>Notez que <tt>foo</tt> est suppos�tre le nom du paquet. On peut conna�e le nom
associ� un fichier d'archive Debian particulier (fichier .deb) d'une de ces mani�s :
<list>
<item>inspecter le fichier � Packages � dans le r�rtoire o�a � stock�ur un site
FTP d'archive Debian. Ce fichier contient une description pour chaque paquet ; le premier
champ de chaque description est le nom formel du paquet.
<item>utiliser la commande <tt>dpkg --info foo_VVV-RRR_AAA.deb</tt> (o�, RRR et AAA sont
respectivement le num� de version, le num� de r�sion, et l'architecture du paquet en question). Ceci affiche,
entre autre, le nom du paquet correspondant au fichier archive.
</list>
<p>Le composant <tt>VVV</tt> est le num� de version fournit par le d�loppeur amont.
Il n'y a pas de standard ici, donc le num� de version peut avoir diff�nts formats
comme � 19990513 � ou � 1.3.8pre1 �.
<p>Le composant <tt>RRR</tt> est le num� de r�sion Debian et il est choisi par
le d�loppeur Debian (ou un utilisateur s'il choisit de construire lui-m� son paquet).
Ce num� correspond au niveau de r�sion du paquet Debian, ainsi, une nouvelle r�sion
signifie g�ralement des modifications du Makefile Debian (<tt>debian/rules</tt>), du
fichier de contr�Debian <tt>debian/control</tt>), des scripts d'installation ou de
d�nstallation (<tt>debian/p*</tt>) ou des fichiers de configurations utilis�avec le paquet.
<p>Le composant <tt>AAA</tt> identifie le processeur pour lequel le paquet a � construit.
Il s'agit g�ralement de <tt>i386</tt>, pour les processeurs compatibles avec
l'Intel�386 et ult�eurs.
La structure de l'archive Debian <ref id="dirtree"> montre les autres possibilit�
Pour plus de d�ils, consultez la description de ��l'architecture Debian��
dans la page de manuel <manref name="dpkg-architecture" section="1">.
<sect id="controlfile">Qu'est ce qu'un fichier de contr�nbsp;?
<p>Des d�ils concernant le contenu du fichier <tt>control</tt> Debian sont fournis dans la charte Debian,
au chapitre cinq, voir <ref id="debiandocs">.
<p>Bri�ment, un fichier <tt>control</tt> est montr�i-dessous pour le paquet Debian hello :
<example>
Package: hello
Priority: optional
Section: devel
Installed-Size: 45
Maintainer: Adam Heath <doogie@debian.org>
Architecture: i386
Version: 1.3-16
Depends: libc6 (>= 2.1)
Description: Le classique et bon exemple
Le programme bonjour de GNU produit une salutation famili� et amicale. Il
<!-- XXX below 'non-programmers' were better, but this is a verbatim copy -->
permet �es non-programmeurs d'utiliser un outil classique d'informatique
qui leur serait autrement indisponible.
.
S�eusement: c'est un exemple sur comment faire un paquet Debian.
C'est la version Debian du programme du projet GNU � bonjour
le monde � (qui est lui-m� un exemple pour le projet de GNU).
</example>
<p>Le champ � Package � contient le nom du paquet. C'est le nom
par lequel les outils de gestion de paquet peuvent le manipuler. Il est
habituellement similaire mais pas n�ssairement le m� �a premi� cha�
composant le nom de l'archive Debian.
<p>Le champ de � Version � donne le num� de version du d�loppeur amont
et (dans le dernier composant) le niveau de r�sion du paquet de Debian de ce programme
comme expliqu�ans <ref id="pkgname">. <!-- XXX missing name -->
<p>Le champ � Architecture � indique pour quel processeur ce binaire
particulier a � compil�
<p>Le champ � Depends � donne une liste des paquets qui doivent �e
install�afin d'installer ce paquet avec succ�
<p>Le champ � Installed-Size � indique l'espace disque utilis�ar le paquet
une fois install�Ceci est pr� pour �e employ�ar les programmes d'installation pour
v�fier s'il y a suffisamment d'espace disque disponible pour installer le programme.
<p>La ligne � Section � indique la section o�paquet Debian est conserv�ur
les sites FTP de Debian.
<p>Le champ � Priority � indique l'importance d'un paquet pour l'installation,
de sorte que des logiciels semi-intelligents comme dselect ou aptitude peuvent trier
les paquets dans une cat�rie par exemple les paquets install�facultativement.
Voir <ref id="priority">.
<p>Le champ � Maintener � contient l'adresse �ctronique de la personne
actuellement responsable de la maintenance du paquet.
<p>Le champ � Description � fournit un bref r�m�es fonctionnalit�du paquet.
<p>Pour plus d'informations sur les champs disponibles dans un paquet, reportez-vous
au chapitre 5 de la charte Debian, � Fichiers control et leurs champs �.
<sect id="conffile">Qu'est ce qu'un Debian conffile ?
<p>Conffiles est une liste de fichiers de configuration (habituellement plac�dans <tt>/etc</tt>)
que le syst� de gestion de paquet n'�asera pas quand le paquet est mis �our.
Ceci s'assure que les valeurs locales pour ces fichiers seront pr�rv�, et c'est un
dispositif critique permettant la mise �iveau des paquets sur un syst� en fonctionnement.
<p>Pour d�rminer exactement quels fichiers sont pr�rv�pendant la mise �our, lancez :
<example>dpkg --status package</example>
et regardez la section � Conffiles: �.
<sect id="maintscripts">Qu'est-ce qu'un script Debian preinst, postinst, prerm, et postrm ?
<p>Ces fichiers sont des scripts ex�tables qui sont lanc�automatiquement avant
ou apr�l'installation d'un paquet. Avec le fichier appel�tt>control</tt>, tous
ces fichiers font partie de la section commande d'une archive Debian.
<p>Les fichiers individuels sont :
<taglist>
<tag/preinst/
<item>Ce script est ex�t�vant que le paquet soit d�rchiv�u fichier archive (.deb).
Beaucoup de scripts � preinst � arr�nt les services des paquets
qui sont mis �our jusqu'�e que leurs installations ou leurs mises �our
soient termin� (suivant le succ�de l'ex�tion du script � postinst �).
<tag/postinst/
<item>Ce script termine typiquement n'importe quelle configuration exig�du paquet <tt>foo</tt> une
fois que <tt>foo</tt> a � d�rchiv� partir du fichier d'archive Debian (� deb �).
Souvent le script � postinst � demande �'utilisateur des informations
et avertit l'utilisateur que s'il accepte les valeurs par d�ut, il devrait se souvenir
de revenir en arri� et de reconfigurer le paquet lorsque la situation le demandera.
Beaucoup de scripts � postinst � ex�tent toutes les commandes n�ssaires
au d�rrage ou au red�rrage d'un service une fois qu'un nouveau paquet a �
install�u mis �our.
<tag/prerm/
<item>Ce script arr� g�ralement tous les d�ns qui sont associ�avec le paquet.
Il est ex�t�vant la suppression des fichiers associ�au paquet.
<tag/postrm/
<item>Ce script modifie g�ralement les liens ou les autres fichiers associ�avec
<tt>foo</tt> et/ou supprime les fichiers cr� par le paquet (Voir aussi
<ref id="virtual">.)
</taglist>
<p>Actuellement tous les fichiers de commande peuvent �e trouv�dans le r�rtoire
<tt>/var/lib/dpkg/info</tt>. Les fichiers concernant le paquet <tt>foo</tt> commencent
par le nom "foo" et sont suivis par les extensions "preinst", "postinst" etc. Le fichier
<tt>foo.list</tt> dans ce r�rtoire liste tous les fichiers install�par le paquet <tt>foo</tt>.
(Notez que l'emplacement de ces fichiers est interne �pkg ; vous ne devriez pas compter
sur eux).
<sect id="priority">Qu'est ce qu'un paquet <em/Essential/, <em/Required/, <em/Important/, <em/Standard/,
<em/Optional/ ou <em/Extra/ ?
<p>�chaque paquet Debian est assign�une priorit�ar les d�loppeurs de la distribution,
c'est une aide pour le syst� de gestion de paquet. Les priorit�sont :
<list>
<item>N�ssaire (<strong>Required</strong>) : paquets n�ssaire pour le fonctionnement
correct du syst�.
<p>Ceci inclut tous les outils n�ssaires pour la r�ration d'un syst� d�ctueux.
Vous ne devez pas supprimer ces paquets ou votre syst� risque de devenir
compl�ment instable et vous ne pourrez probablement pas utiliser dpkg pour corriger cela.
Avec seulement les paquets n�ssaires, le syst� sera probablement inutilisable mais
il aura suffisamment de fonctionnalit�pour permettre de d�rrer et d'installer plus
de logiciels.
<item><strong>Important</strong> : paquets devant �e pr�nts sur tous syst�s de type Unix
<p>Les autres paquets sans lesquels le syst� ne fonctionnera pas correctement ou ne sera pas
utilisable ont cette priorit�Ceci n'inclut <em>PAS</em> Emacs, X, TeX ou aucune autre
grosse application. Ces paquets constituent seulement l'infrastructure de base.
<item><strong>Standard</strong> : paquets pr�nts sur n'importe quel syst� Linux,
y compris un syst� raisonnablement petit mais pas limit� un syst� en mode console.
Des outils sont disponibles pour naviguer sur Internet (en utilisant w3m),
envoyer des courriels (avec mutt) et t�charger des fichiers depuis des
serveurs FTP.
<p> C'est ce qui sera install�ar d�ut si les utilisateurs ne s�ctionnent
rien. Cela n'inclut pas les grosses applications, mais int�e
l'interpr�ur Python et certains serveurs comme OpenSSH (pour
l'administration �istance), Exim (pour la livraison des courriels, m�
s'il peut �e configur�n mode local uniquement), un serveur identd
(pidentd) et le portmapper RPC (<tt>portmap</tt>). Sont �lement int��
certaines documentations g�rales consid�es utiles par la plupart des
utilisateurs.
<item>Optionnel (<strong>Optional</strong>) : paquets incluant tous ce que vous
pourriez raisonnablement vouloir installer si vous ne savez pas ce que c'est
ou si vous n'avez pas pr�s�e condition.
<p>Ceci inclut X, une distribution TeX compl� et beaucoup d'applications.
<item><strong>Extra</strong> : paquets qui entrent en conflit avec d'autres ayant
des priorit�plus �v� ou ayant des conditions particuli�s qui les rendent peu
convenables pour �e optionnels. Ils sont utiles seulement si vous savez d� ce qu'ils font.
</list>
<p>Si vous faites une installation Debian par d�ut tous les paquets ayant une priorit�<strong>standard</strong> ou sup�eur seront install�sur votre syst�. Si vous
choisissez des t�es pr�finies, vous obtiendrez aussi les paquets de priorit�lus faible.
<p>De plus, certain paquets sont marqu�comme essentiel (<strong>Essential</strong>)
puisqu'ils sont absolument n�ssaire pour un fonctionnement correct du syst�. Les outils
de gestion de paquets refuseront de les supprimer.
<sect id="virtual">Qu'est-ce qu'un paquet virtuel ?
<p>Un paquet virtuel est un nom g�rique qui s'applique �'importe quel
groupe de paquets fournissant une fonctionnalit�e base semblable.
Par exemple, les programmes <tt>tin</tt> et <tt>trn</tt> sont des programmes
de lecture de nouvelles Usenet et devraient donc satisfaire n'importe quelle
d�ndance d'un programme exigeant la pr�nce d'un programme de lecture de
nouvelles sur le syst�, afin de fonctionner ou pour �e utiles. Les deux
sont donc capables de fournir le paquet virtuel appel�tt>news-reader</tt>.
<p>De la m� fa�, <tt>smail</tt> et <tt>sendmail</tt> fournissent tous les deux
les fonctionnalit�d'un agent de transport de courrier �ctronique. Les deux
sont donc capables de fournir le paquet virtuel <tt>mail-transport-agent</tt>.
Si l'un ou l'autre est install�alors n'importe quel programme exigeant l'installation
d'un agent de transport de courrier �ctronique sera satisfait par l'existence de ce
paquet virtuel.
<p>Debian fournit un m�nisme de sorte que, si plus d'un paquet fournissant
le m� paquet virtuel est install�ur le syst�, alors les administrateurs
peuvent choisir leur paquet pr�r�La commande appropri�est
<tt>update-alternatives</tt>, et est d�ite plus loin dans <ref id="diverse">.
<sect id="depends">Que signifie qu'un paquet d�nd (<em/Depends/), recommande (<em/Recommends/),
sugg� (<em/Suggests/), est en conflit (<em/Conflicts/), remplace (<em/Replaces/)
ou fournit (<em/Provides/) un autre paquet ?
<p>Le syst� de paquet Debian a une gamme de � d�ndances � sur les paquets
qui permet d'indiquer (avec un simple drapeau) �uel niveau un programme A peut
fonctionner ind�ndamment de l'existence du programme B sur un syst� donn�bsp;:
<list>
<item>Le paquet A <em>d�nd</em> du paquet B si B doit absolument �e install� pour pouvoir ex�ter A. Dans certain cas, A d�nd non seulement de B mais
d'une version de B. Dans ce cas, la d�ndance de version est une limite basse,
dans le sens que A d�nd de toutes versions plus r�ntes que celle sp�fi� <item>Le paquet A <em>recommande</em> le paquet B si le responsable du paquet pense que
la plupart des utilisateurs ne voudraient pas A sans avoir �lement la fonctionnalit�ournie
par B.
<item>Le paquet A <em>sugg�</em> le paquet B si B contient des fichiers qui sont li�aux
(et augmentent habituellement) fonctionnalit�de A.
<item>Le paquet A est en <em>conflit</em> avec le paquet B quand A ne peut pas
fonctionner si B est install�ur le syst�. Le plus souvent les conflits
sont des cas o�ontient des fichiers qui sont une am�oration de ceux de B.
Le conflit est souvent combin�vec le remplacement.
<item>Le paquet A <em>remplace</em> le paquet B quand les fichiers install�par
B sont supprim�et (dans certains cas) �as�par les fichiers de A.
<item>Le paquet A <em>fournit</em> le paquet B quand tous les fichiers et toutes les fonctionnalit� de B sont incorpor�dans A. Ce m�nisme fournit aux utilisateurs ayant une contrainte d'espace
disque un moyen d'obtenir seulement la partie du paquet dont ils ont vraiment besoin.
</list>
<p>Une information plus d�ill�sur l'utilisation de chacun de ces termes peut �e
trouv�dans la charte Debian.
<sect id="pre-depends">Quel est le sens de � Pre-Depends � ?
<p>� Pre-Depends � est une d�ndance particuil�. Dans le cas de la plupart
des paquets, <tt>dpkg</tt> d�rchivera les fichiers archives (c.-�. les fichiers
<tt>.deb</tt>) ind�ndamment de l'existance sur le syst� des fichiers dont il d�nd.
De mani� simpliste, le d�rchivage signifie que <tt>dpkg</tt> extraira
les fichiers �artir du fichier archive qui sont cens��e install�sur
votre syst� de fichiers, et les mettra en place.
Si ces paquets d�ndent de l'existence de quelques autres paquets sur votre syst�,
<tt>dpkg</tt> refusera d'accomplir l'installation (par l'ex�tion de l'action de
configuration) jusqu'�e que les autres paquets soient install�
<p>Cependant, pour certain paquets, <tt>dpkg</tt> refusera de les d�rchiver
jusqu'�e que certaines d�ndances soient r�lues. De tels paquets sont dits
� Pr��ndant � de la pr�nce de quelques autres paquets. Le projet
Debian fournissait ce m�nisme pour g�r la mise �our de syst� utilisant le
format <tt>a.out</tt> vers le format <tt>ELF</tt>, o�rdre de d�rchivage �it critique.
Il y a d'autre situations de mise �our o�te m�ode est utile, par exemple
pour les paquets ayant une priorit� required � et des d�ndances sur la libc.
<p>Comme ci-dessus, une information plus d�ill�sur l'utilisation de ce terme
peut �e trouv�dans la charte Debian.
<sect id="pkgstatus">Quelle est la signification de <em/unknown/, <em/install/, <em/remove/,
<em/purge/ et <em/hold/ dans le statut du paquet ?
<p>Ces drapeaux indiquent ce que souhaite faire l'utilisateur avec un paquet
(ils sont positionn�par les actions de l'utilisateur dans la section � Section �
de <tt>dselect</tt> ou par des appels directs de <tt>dpkg</tt> par l'utilisateur).
<p>Leurs significations sont :
<list>
<item>unknown - L'utilisateur n'a jamais indiqu�'il souhaitait le paquet.
<item>install - L'utilisateur souhaite installer ou mettre �our le paquet.
<item>remove - L'utilisateur souhaite supprimer le paquet, mais ne d�re pas
effacer les fichiers de configuration existants.
<item>purge - L'utilisateur souhaite supprimer le paquet compl�ment, incluant
ses fichiers de configuration.
<item>hold - L'utilisateur ne souhaite pas traiter le paquet, c.-�. qu'il veut conserver
la version courante avec l'�t actuel de celui-ci.
</list>
<sect id="puttingonhold">Comment est-ce que je mets un paquet en � hold � ?
<p>Il y a trois moyens de bloquer un paquet, avec dpkg, aptitude ou dselect.
<p>Avec dpkg, vous devez exporter la liste de s�ction des paquets,
avec la commande :
<example>dpkg --get-selections \* > selections.txt</example>
puis �ter le fichier <file/selections.txt/, changer la ligne contenant
le paquet que vous souhaitez conserver, par exemple pour <package/libc6/, de ceci :
<example>libc6 install</example>
�eci :
<example>libc6 hold</example>
sauvegarder le fichier et le recharger dans la base de donn� de dpkg avec :
<example>dpkg --set-selections < selections.txt</example>
<p>Avec aptitude, vous pouvez conserver un paquet en faisant
<example>aptitude hold package_name</example>
et enlever le drapeau � hold � avec
<example>aptitude unhold package_name</example>
<p>Avec dselect, vous devez entrer dans l'�an [S]elect, trouver le paquet que
vous souhaitez conserver dans l'�t actuel, et appuyer sur la touche '=' (ou sur 'H').
Les changements seront pris en compte �a sortie de l'�an [S]elect.
<sect id="sourcepkgs">Comment est-ce que j'installe un paquet source ?
<p>Les paquets sources Debian ne peuvent pas �e v�tablement install� ils sont
seulement d�quet�dans n'importe quel r�rtoire o�s voulez en construire les
paquets binaires.
<p>Les paquets sources sont distribu�sur la plupart des serveurs o�s pouvez
obtenir les paquets binaires.
Si vous configurez votre fichier <manref name="sources.list" section="5"> pour APT
en ajoutant la ligne � deb-src � appropri� vous pourrez facilement t�charger
toutes les sources des paquets en lan�t la commande
<example>apt-get source foo</example>
<p>Pour vous aider r�lement �a construction du paquet de source, Debian fournit
un m�nisme pour les d�ndances de construction. Ceci signifie que le responsable du
paquet tient une liste des autres paquets n�ssaires �a construction du paquet.
Pour voir comment cela fonctione, ex�tez
<example>apt-get build-dep foo</example>
avant de construire les sources.
<sect id="sourcebuild">Comment est-ce que je peux construire les paquets binaires depuis
les paquets sources ?
<p>La m�ode recommand�est d'utiliser les diff�nts outils de haut-niveau
(��wrappers��). Voici comment faire en utilisant les outils
<tt>devscripts</tt>. Installez le paquet si cela n'est pas d� fait.
<p>Maintenant, commencez par r�p�r le paquet source�:
<example>apt-get source foo</example>
puis entrez dans l'arborescence source�:
<example>cd foo-*</example>
Puis installez les d�ndances de construction n�ssaires (s'il y en a)�:
<example>sudo apt-get build-dep foo</example>
Puis cr� une version particuli� de votre propre construction (afin de ne pas les confondre plus tard lorsque Debian publiera sa propre nouvelle version)�:
<example>dch -l local 'Blah blah blah'</example>
Et enfin construisez votre paquet�:
<example>debuild -us -uc</example>
Si tout a correctement fonctionn�vous deviez pouvoir installer votre paquet avec la commande�:
<example>sudo dpkg -i ../*.deb</example>
<p>Si vous pr�rez effectuer les op�tions vous-m�, et ne voulez pas utiliser
<tt>devscripts</tt>, suivez cette proc�re�:</p>
<p>Vous aurez besoin de tous les fichiers foo_*.dsc, foo_*.tar.gz et foo_*.diff.gz pour
compiler les sources (remarquez que pour certain paquets il n'y a pas de fichier .diff.gz,
ce sont les paquets natifs �ebian).
<p>Une fois que vous les avez r�p�s (voir <ref id="sourcepkgs">), si vous avez le paquet
<package/dpkg-dev/ install�la commande suivante :
<example>dpkg-source -x foo_version-revision.dsc</example>
d�rchivera le paquet dans un r�rtoire nomm�tt>foo-version</tt>.
<p>Si vous souhaitez juste compiler le paquet, vous devez vous placer dans le r�rtoire
<tt>foo-version</tt> et lancer la commande
<example>dpkg-buildpackage -rfakeroot -b</example>
pour construire le paquet (notez que la paquet <package/fakeroot/ est
aussi n�ssaire) et faites
<example>dpkg -i ../foo_version-revision_arch.deb</example>
pour installer le nouveau paquet.
<sect id="creatingdebs">Comment est-ce que je cr�un paquet Debian ?
<p>Pour une description plus d�ill� lisez le � guide des nouveaux responsables
Debian � disponible dans le paquet <package/maint-guide/ ou �'adresse
<url id="http://www.debian.org/doc/devel-manuals#maint-guide">.
Index: pkg_basics.sgml
===================================================================
--- pkg_basics.sgml (revision 5165)
+++ pkg_basics.sgml (copie de travail)
@@ -1,8 +1,13 @@
-<!-- Subversion revision of original English document "3669" -->
+<!-- Subversion revision of original English document "5004" -->
<chapt id="pkg_basics">Les bases du syst� de gestion des paquets Debian
+<p>Ce chapitre touche aux m�nismes internes de bas niveau du syst� de
+gestion de paquets Debian. Si vous �e avant tout int�ss�par
+l'<em>utilisation</em> des outils appropri� passez au chapitres <ref
+id="pkgtools"> et <ref id="uptodate">.
+
<sect id="package">Qu'est ce qu'un paquet Debian ?
<p>Les paquets contiennent g�ralement tous les fichiers n�ssaires pour
@@ -15,7 +20,8 @@
et d'autres documentations. Ces paquets sont distribu�sous un format d'archive
sp�fique �ebian (voir <ref id="deb-format">). Ils sont habituellement reconnaissables
par l'extension � .deb �. Ils peuvent �e install�en utilisant l'utilitaire
- <tt>dpkg</tt> vous trouverez plus de d�ils dans les pages de manuel.
+ <tt>dpkg</tt> (�ntuellement avec une interface comme <prgn/aptitude/)�;
+ vous trouverez plus de d�ils dans les pages de manuel.
<item><em>Les paquets sources</em> sont constitu�d'un fichier <tt>.dsc</tt> d�ivant
le paquet source (incluant le nom des fichiers suivants), un fichier <tt>.orig.tar.gz</tt>
@@ -23,6 +29,7 @@
fichier <tt>.diff.gz</tt> contenant les modifications sp�fiques �ebian par rapport au source
original. L'utilitaire <tt>dpkg-source</tt> permet l'archivage et le d�rchivage des sources
Debian vous trouverez plus de d�ils dans les pages de manuel.
+ (Le programme <prgn/apt-get/ peut �e utilis�omme une interface pour <tt>dpkg-source</tt>.)
</list>
<p>L'installation de logiciels par le syst� de paquet utilise les d�ndances qui
@@ -39,8 +46,7 @@
<p>Les outils de gestion de paquets Debian peuvent �e utilis�pour :
<list>
<item>manipuler ou administrer les paquets ou une partie des paquets,
- <item>aider les utilisateurs dans le d�upage de paquets qui doivent �e transmis sur
- des m�um de taille limit�comme les disquettes,
+ <item>administrer les modifications locales (��overrides��) des fichiers d'un paquets,
<item>aider les d�loppeurs dans la construction de paquets et
<item>aider les utilisateurs dans l'installation de paquets r�dant sur un serveur
FTP distant.
@@ -53,15 +59,16 @@
un ensemble de programmes. Normalement, un fichier archive Debian a un nom se terminant
par <tt>.deb</tt>.
-<p>Les m�nismes internes du format des paquets binaires Debian est d�it dans la page
+<p>Les m�nismes internes du format des paquets binaires Debian sont d�its dans la page
de manuel de <manref name="deb" section="5">. Ce format interne est susceptible de changer
-(entre chaque version principale de &debian;), donc utilisez toujours <manref name="dpkg-deb" section="1">
-pour manipuler les fichiers <tt>.deb</tt>.
+(entre chaque version principale de &debian;), donc utilisez toujours
+<manref name="dpkg-deb" section="1"> si vous avez besoin d'effectuer des op�tions de
+bas niveau sur des fichiers <tt>.deb</tt>.
<sect id="pkgname">Pourquoi les noms des paquets Debian sont-ils si longs ?
<p>Le nom des paquets binaires Debian se conforme �a convention suivante :
-<foo>_<Num�Version>-<Num�R�sionDebian>.deb
+<foo>_<Num�Version>-<Num�R�sionDebian>_<DebianArchitecture>.deb
<p>Notez que <tt>foo</tt> est suppos�tre le nom du paquet. On peut conna�e le nom
associ� un fichier d'archive Debian particulier (fichier .deb) d'une de ces mani�s :
@@ -69,8 +76,8 @@
<item>inspecter le fichier � Packages � dans le r�rtoire o�a � stock�ur un site
FTP d'archive Debian. Ce fichier contient une description pour chaque paquet ; le premier
champ de chaque description est le nom formel du paquet.
- <item>utiliser la commande <tt>dpkg --info foo_VVV-RRR.deb</tt> (o� et RRR sont
- respectivement le num� de version et de r�sion du paquet en question). Ceci affiche,
+ <item>utiliser la commande <tt>dpkg --info foo_VVV-RRR_AAA.deb</tt> (o�, RRR et AAA sont
+ respectivement le num� de version, le num� de r�sion, et l'architecture du paquet en question). Ceci affiche,
entre autre, le nom du paquet correspondant au fichier archive.
</list>
@@ -85,13 +92,13 @@
fichier de contr�Debian <tt>debian/control</tt>), des scripts d'installation ou de
d�nstallation (<tt>debian/p*</tt>) ou des fichiers de configurations utilis�avec le paquet.
+<p>Le composant <tt>AAA</tt> identifie le processeur pour lequel le paquet a � construit.
+Il s'agit g�ralement de <tt>i386</tt>, pour les processeurs compatibles avec
+l'Intel�386 et ult�eurs.
+La structure de l'archive Debian <ref id="dirtree"> montre les autres possibilit�
+Pour plus de d�ils, consultez la description de ��l'architecture Debian��
+dans la page de manuel <manref name="dpkg-architecture" section="1">.
-<!--
-<p>The <tt>Arch</tt> component identifies the processor for which
-the package was built. This is commonly <tt>i386</tt>, which refers to
-chips compatible to Intel's 386 or later versions. For other
-possibilities see <ref id="dirtree" name="Debian's FTP directory structure">.
--->
<sect id="controlfile">Qu'est ce qu'un fichier de contr�nbsp;?
@@ -140,11 +147,10 @@
v�fier s'il y a suffisamment d'espace disque disponible pour installer le programme.
<p>La ligne � Section � indique la section o�paquet Debian est conserv�ur
-les sites FTP de Debian. C'est le nom d'un sous-r�rtoire (dans l'un des r�rtoires
-principaux, voir <ref id="dirtree">) o�paquet est conserv�+les sites FTP de Debian.
<p>Le champ � Priority � indique l'importance d'un paquet pour l'installation,
-de sorte que des logiciels semi-intelligents comme dselect ou console-apt peuvent trier
+de sorte que des logiciels semi-intelligents comme dselect ou aptitude peuvent trier
les paquets dans une cat�rie par exemple les paquets install�facultativement.
Voir <ref id="priority">.
@@ -208,7 +214,7 @@
(Notez que l'emplacement de ces fichiers est interne �pkg ; vous ne devriez pas compter
sur eux).
-<sect id="priority">Qu'est ce qu'un paquet <em/Essential/ <em/Required/, <em/Important/, <em/Standard/,
+<sect id="priority">Qu'est ce qu'un paquet <em/Essential/, <em/Required/, <em/Important/, <em/Standard/,
<em/Optional/ ou <em/Extra/ ?
<p>�chaque paquet Debian est assign�une priorit�ar les d�loppeurs de la distribution,
@@ -225,21 +231,25 @@
de logiciels.
<item><strong>Important</strong> : paquets devant �e pr�nts sur tous syst�s de type Unix
<p>Les autres paquets sans lesquels le syst� ne fonctionnera pas correctement ou ne sera pas
- utilisable ont cette priorit�Ceci n'inclut <em>PAS</em> Emacs, X11, TeX ou aucune autre
+ utilisable ont cette priorit�Ceci n'inclut <em>PAS</em> Emacs, X, TeX ou aucune autre
grosse application. Ces paquets constituent seulement l'infrastructure de base.
-<!-- JFS: Review for etch, since some development packages might be removed
- in the near future #301138 -->
<item><strong>Standard</strong> : paquets pr�nts sur n'importe quel syst� Linux,
y compris un syst� raisonnablement petit mais pas limit� un syst� en mode console.
+ Des outils sont disponibles pour naviguer sur Internet (en utilisant w3m),
+ envoyer des courriels (avec mutt) et t�charger des fichiers depuis des
+ serveurs FTP.
<p> C'est ce qui sera install�ar d�ut si les utilisateurs ne s�ctionnent
- rien. Cela n'inclut pas les grosses applications, mais int�e certains logiciels
- de d�loppement comme les compilateurs GNU C et C++ (<tt>gcc</tt>, <tt>g++</tt>),
- GNU make, ainsi que l'interpr�ur Python et certains serveurs comme OpenSSH,
- le d�n d'impression BSD (<tt>lpr</tt>) et le portmapper RPC (<tt>portmap</tt>).
+ rien. Cela n'inclut pas les grosses applications, mais int�e
+ l'interpr�ur Python et certains serveurs comme OpenSSH (pour
+ l'administration �istance), Exim (pour la livraison des courriels, m�
+ s'il peut �e configur�n mode local uniquement), un serveur identd
+ (pidentd) et le portmapper RPC (<tt>portmap</tt>). Sont �lement int��
+ certaines documentations g�rales consid�es utiles par la plupart des
+ utilisateurs.
<item>Optionnel (<strong>Optional</strong>) : paquets incluant tous ce que vous
pourriez raisonnablement vouloir installer si vous ne savez pas ce que c'est
ou si vous n'avez pas pr�s�e condition.
- <p>Ceci inclut X11, une distribution TeX compl� et beaucoup d'applications.
+ <p>Ceci inclut X, une distribution TeX compl� et beaucoup d'applications.
<item><strong>Extra</strong> : paquets qui entrent en conflit avec d'autres ayant
des priorit�plus �v� ou ayant des conditions particuli�s qui les rendent peu
convenables pour �e optionnels. Ils sont utiles seulement si vous savez d� ce qu'ils font.
@@ -330,7 +340,7 @@
<p>Comme ci-dessus, une information plus d�ill�sur l'utilisation de ce terme
peut �e trouv�dans la charte Debian.
-<sect id="pkgstatus">Quelle est la signification de <em/unknown/, <em/install/, <em/remove/
+<sect id="pkgstatus">Quelle est la signification de <em/unknown/, <em/install/, <em/remove/,
<em/purge/ et <em/hold/ dans le statut du paquet ?
<p>Ces drapeaux indiquent ce que souhaite faire l'utilisateur avec un paquet
@@ -353,7 +363,7 @@
<p>Il y a trois moyens de bloquer un paquet, avec dpkg, aptitude ou dselect.
-<p>Avec dpkg, vous devez seulement exporter la liste de s�ction des paquets,
+<p>Avec dpkg, vous devez exporter la liste de s�ction des paquets,
avec la commande :
<example>dpkg --get-selections \* > selections.txt</example>
puis �ter le fichier <file/selections.txt/, changer la ligne contenant
@@ -396,8 +406,38 @@
avant de construire les sources.
<sect id="sourcebuild">Comment est-ce que je peux construire les paquets binaires depuis
- les paquets sources ?
+les paquets sources ?
+<p>La m�ode recommand�est d'utiliser les diff�nts outils de haut-niveau
+(��wrappers��). Voici comment faire en utilisant les outils
+<tt>devscripts</tt>. Installez le paquet si cela n'est pas d� fait.
+
+<p>Maintenant, commencez par r�p�r le paquet source�:
+ <example>apt-get source foo</example>
+
+puis entrez dans l'arborescence source�:
+
+ <example>cd foo-*</example>
+
+Puis installez les d�ndances de construction n�ssaires (s'il y en a)�:
+
+ <example>sudo apt-get build-dep foo</example>
+
+Puis cr� une version particuli� de votre propre construction (afin de ne pas les confondre plus tard lorsque Debian publiera sa propre nouvelle version)�:
+
+ <example>dch -l local 'Blah blah blah'</example>
+
+Et enfin construisez votre paquet�:
+
+ <example>debuild -us -uc</example>
+
+Si tout a correctement fonctionn�vous deviez pouvoir installer votre paquet avec la commande�:
+
+ <example>sudo dpkg -i ../*.deb</example>
+
+<p>Si vous pr�rez effectuer les op�tions vous-m�, et ne voulez pas utiliser
+<tt>devscripts</tt>, suivez cette proc�re�:</p>
+
<p>Vous aurez besoin de tous les fichiers foo_*.dsc, foo_*.tar.gz et foo_*.diff.gz pour
compiler les sources (remarquez que pour certain paquets il n'y a pas de fichier .diff.gz,
ce sont les paquets natifs �ebian).
Reply to: