deb-control(5)

NOM
deb-control - Format du fichier principal de contrôle dans les paquets Debian

SYNOPSIS
contrôle

DESCRIPTION
Chaque paquet Debian possède un fichier principal de contrôle qui contient un certain nombre de champs ou de commentaires pour les lignes commençant par un caractère « # ». Chaque champ commence par une étiquette, telle que Package ou Version (la casse n'importe pas), suivie d'un « : », et du contenu du champ. Les champs sont séparés seulement par des étiquettes de champ. En d'autres termes, le contenu d'un champ peut s'étendre sur plusieurs lignes, mais les outils d'installation joindront en général les lignes pendant le traitement du contenu du champ (sauf pour le champ Description, voyez ci-dessous).

CHAMPS REQUIS

Package: nom-du-paquet
    La valeur de ce champ donne le nom du paquet, et la plupart des outils d'installation s'en servent pour produire les noms des paquets.

Version: chaîne-de-la-version
    C'est classiquement le numéro de version du paquet d'origine dans la forme choisie par l'auteur du programme. Il peut y avoir aussi un numéro de révision Debian (pour les paquets non natifs). Le format exact et l'algorithme de tri sont décrits dans deb-version(5).

Maintainer: nom-complet-adresse-électronique
    Le format de ce champ sera « Jean Dupont <jdupont@foo.com> » ; et c'est bien sûr le créateur du paquet, par opposition à l'auteur du programme mis en paquet.

Description: description-courte
    description-longue
    Le format de la description du paquet est un résumé bref sur la première ligne (après le champ « Description »). Les lignes suivantes peuvent servir à une description plus longue et plus détaillée. Chaque ligne de cette description longue doit être précédée d'une espace ; quand c'est une ligne blanche, elle doit contenir un seul « . » après cet espace.

CHAMPS OPTIONNELS

Section:  section
    C'est un champ général qui indique la catégorie d'un paquet ; cette catégorie est fondée sur le programme que ce paquet installe. « utils », « net », « mail », « text », « x11 », etc. représentent quelques catégories habituelles.

Priority: priorité
    Définit l'importance du paquet à l'intérieur du système général. « required », « standard », « optional », « extra », etc. représentent des priorités habituelles.

Les champs Section et Priority possèdent un ensemble défini de valeurs acceptées, tiré de la Charte Debian (« Debian Policy »). On peut en trouver une liste dans la version la plus récente du paquet debian-policy.

Essential: yes|no
    On se sert habituellement de ce champ uniquement si la réponse est yes. Il signifie que ce paquet est exigé pour un fonctionnement correct du système. Dpkg et les autres outils d'installation interdisent la suppression d'un paquet Essential (du moins tant qu'une des options de forçage n'est pas utilisée).

Architecture: arch|all
    L'architecture précise pour quel type de matériel le paquet a été compilé. Voici quelques architectures habituelles : « i386 », « m68k », « sparc », « alpha », « powerpc », etc. Remarquez que l'option all signifie que le paquet est indépendant de toute architecture. Les scripts shell ou Perl, ainsi que la documentation sont dans ce cas.

Origin: nom
    Nom de la distribution dont ce paquet provient.

Bugs: URL
    L'URL du système de suivi de bogues (BTS) de ce paquet. Le format utilisé est type_de_bts://adresse-du-bts, par exemple debbugs://bugs.debian.org.

Homepage: URL
    URL de la page d'accueil du projet amont.

Tag: liste-d'étiquettes
    Liste d'étiquettes décrivant les qualités du paquet. La description et la liste des étiquettes (« tags ») gérées peut être trouvée dans le paquet debtags.

Multi-Arch: same|foreign|allowed
    Ce champ sert à indiquer comment ce paquet se comporte sur des installations multi-architectures. La valeur same indique que le paquet peut être co-installé avec lui-même, mais ne doit pas être utilisé pour satisfaire une dépendance d'un paquet d'une architecture différente de la sienne. La valeur foreign indique que le paquet ne peut pas être co-installé avec lui-même, mais peut permettre de satisfaire les dépendances d'un paquet d'une architecture différente de la sienne. La valeur allowed permet aux dépendances inverses d'indiquer dans leur champ Depends qu'elles acceptent un paquet d'une autre architecture, et n'a pas d'autres effets.

Source: nom-du-source
    Le nom du paquet source d'où provient le paquet binaire, s'il y a une différence entre les deux noms.

Subarchitecture: valeur
Kernel-Version: valeur
Installer-Menu-Item: valeur
    Ces champs sont utilisés par l'installateur et ne sont en général pas nécessaires. Veuillez consulter /usr/share/doc/debian-installer/devel/modules.txt fourni avec le paquet debian-installer pour plus de détails.

Depends: liste-de-paquets
    C'est la liste des paquets exigés pour que ce paquet arrive à fonctionner de manière non triviale. Le programme de maintenance des paquets interdit l'installation d'un paquet quand les paquets répertoriés dans le champ Depends ne sont pas installés (du moins tant qu'une option de forçage n'est pas utilisée) ; il lance les scripts « postinst » des paquets répertoriés dans les champs « Depends: » avant les scripts « postinst » des paquets qui dépendent d'eux. À l'inverse, lors d'une suppression les scripts « prerm » des paquets sont lancés avant ceux de leurs dépendances.

Pre-Depends: liste-de-paquets
    C'est la liste des paquets qui doivent être installés et configurés avant que ce paquet puisse être installé. Habituellement, on utilise ce champ quand un paquet a besoin d'un autre paquet pour lancer son script « preinst ».

Recommends: liste-de-paquets
    C'est la liste des paquets qu'on trouverait avec ce paquet dans toute installation standard. Le programme de maintenance des paquets avertit l'utilisateur quand il installe un paquet sans installer les paquets répertoriés dans le champ Recommends.

Suggests: liste-de-paquets
    C'est la liste des paquets qui, associés avec ce paquet, peuvent améliorer son utilité ; néanmoins, une installation sans ces paquets est parfaitement raisonnable.

La syntaxe des champs Depends, Pre-Depends, Recommends et Suggests est une liste d'ensembles de paquets possibles. Chaque ensemble est une liste de paquets séparés par une barre verticale (le symbole du tube) « | ». Les ensembles sont séparés par des virgules. Une virgule représente un « ET » logique et une barre verticale représente un « OU » logique ; le tube a la précédence dans l'évaluation de l'expression. Chaque nom de paquet peut être suivi par une contrainte sur le numéro de version, celle-ci se trouve alors entre parenthèses.

Une contrainte sur le numéro de version peut commencer par « >> », et dans ce cas toute version supérieure correspondra, et il peut indiquer (ou pas) le numéro de révision pour le paquet debian (les deux numéros étant séparés par un trait d'union). Voici les relations acceptées pour les versions : « >> » pour supérieur à, « << » pour inférieur à, « >= » pour supérieur ou égal, « <= » pour inférieur ou égal, et « = » pour égal à.

Breaks: liste-de-paquets
    C'est une liste de paquets que ce paquet « casse », par exemple en révélant des bogues quand les paquets concernés dépendent de celui-ci. Le programme de maintenance des paquets interdit la configuration de paquets cassés ; une méthode usuelle de résolution est la mise à jour des paquets mentionnés dans le champ Breaks.

Conflicts: liste-de-paquets
    C'est une liste de paquets qui sont en conflit avec ce paquet ; ils contiennent par exemple des fichiers qui ont le même nom. Le programme de maintenance des paquets interdit l'installation simultanée de paquets en conflit. Deux paquets en conflit renseigneront une ligne Conflicts avec le nom de l'autre paquet.

Replaces: liste-de-paquets
    C'est une liste de paquets que ce paquet remplace. Il peut ainsi remplacer les fichiers de ces autres paquets ; on se sert pour cela du champ Conflicts pour forcer la suppression des autres paquets, si celui-là possède aussi les mêmes fichiers que le paquet en conflit.

Provides: liste-de-paquets
    C'est une liste de paquets virtuels que ce paquet « remplit ». On s'en sert habituellement pour des paquets qui offrent le même service. Par exemple, sendmail et exim sont des serveurs de courrier, et donc ils « remplissent » chacun le paquet « mail-transport-agent » ; ainsi les autres paquets peuvent dépendre de ce paquet virtuel. Sendmail et exim peuvent ainsi chacun satisfaire la dépendance. Les paquets qui dépendent d'un serveur de courrier n'ont pas à connaître les noms de tous les serveurs de courrier et n'ont pas à utiliser « | » comme séparateur de liste.

La syntaxe des champs Breaks, Conflicts, Replaces et Provides est une liste de noms de paquets, séparés par des virgules (et des espaces facultatifs). Dans les champs Breaks et Conflicts la virgule sera lue comme un « OU ». On peut donner une version optionnelle de la même façon que ci-dessus dans les champs Breaks, Conflicts et Replaces.

Built-Using: liste-de-paquets
    Ce champ affiche les paquets source supplémentaires utilisés lors de la construction du paquet binaire. Il permet d'indiquer aux logiciels de gestion de l'archive que des paquets source supplémentaires doivent être conservées tant que le paquet binaire est maintenu. Ce champ doit être une liste de paquets source avec des références strictes de version (=). Veuillez noter que les logiciels de gestion de l'archive risque de ne pas accepter un envoi qui déclare une relation Built-Using qui ne peut pas être satisfaite dans l'archive.

EXEMPLE
# Commentaire
Package: grep
Essential: yes
Priority: required
Section: base
Maintainer: Wichert Akkerman <wakkerma@debian.org>
Architecture: sparc
Version: 2.4-1
Pre-Depends: libc6 (>= 2.0.105)
Provides: rgrep
Conflicts: rgrep
Description: GNU grep, egrep and fgrep.
 Il se peut que le grep de la famille GNU des utilitaires grep soit
 le plus rapide de l'ouest ! Le grep de GNU est fondé sur un mécanisme
 rapide de mise en correspondance déterministe d'états simples (environ
 deux fois plus rapide que le « egrep » standard d'Unix), modifié par une
 recherche de type Boyer-Moore-Gosper qui cherche une chaîne donnée en
 empêchant que les textes impossibles soient analysés par le mécanisme de
 mise en correspondance d'expressions rationnelles et sans avoir
 nécessairement besoin de voir chaque caractère. C'est beaucoup plus
 rapide que les « grep » ou « egrep » d'Unix.
 (Des expressions rationnelles contenant des références circulaires
 ralentissent cependant le programme.)

VOIR AUSSI
deb(5), deb-version(5), debtags(1), dpkg(1), dpkg-deb(1).

TRADUCTION
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute erreur à <debian-l10n-french@lists.debian.org>.