deb-control - Format du fichier principal de contrôle dans
les paquets binaires Debian
Each Debian binary package contains a control file in its
control member, and its deb822(5) format is a subset of the
master debian/control file in Debian source packages, see
deb-src-control(5).
This file contains a number of fields. Each field begins with a
tag, such as Package or Version (case insensitive), followed
by a colon, and the body of the field (case sensitive unless stated
otherwise). Fields are delimited only by field tags. In other words, field
text may be multiple lines in length, but the installation tools will
generally join lines when processing the body of the field (except in the
case of the Description field, see below).
- Package:
nom-du-paquet (requis)
- 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.
- Package-Type:
deb|udeb|type
- Ce champ indique le type de paquet. La valeur udeb est à
utiliser pour les paquets à taille contrôlée
utilisés par l'installateur Debian. La valeur deb est la
valeur par défaut qui est utilisée si le champ n'est pas
présent. De nouveaux types pourraient être ajoutés au
fil du temps.
- Version:
chaîne-de-la-version (requis)
- 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(7).
- Maintainer:
nom-complet-et-adresse-électronique
(recommandé)
- 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 (recommandé)
-
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 cette espace.
- Section:
section
- 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
particulière de la distribution.
- Installed-Size:
size
- La taille approximative totale des fichiers installés du paquet, en
Kio⋅
- Protected:
yes|no
- This field is usually only needed when the answer is yes. It
denotes a package that is required for proper booting of the system.
dpkg(1) or any other installation tool will not allow a
Protected package to be removed (at least not without using one of
the force options).
- Essential:
yes|no
- This field is usually only needed when the answer is yes. It
denotes a package that is required for proper operation of the system.
dpkg(1) or any other installation tool will not allow an
Essential package to be removed (at least not without using one of
the force options).
- Build-Essential:
yes|no
- Ce champ est habituellement nécessaire seulement si la
réponse est yes, et il est généralement
injecté par le logiciel d'archive. Il désigne un paquet qui
est requis lors de la construction d'autres paquets.
- Architecture:
arch|all (recommandé)
- L'architecture précise pour quel type de matériel le paquet
a été compilé. Voici quelques architectures
habituelles : amd64, armel, i386,
powerpc, etc. Remarquez que l'option all signifie que
le paquet est indépendant de toute architecture. C'est le cas, par
exemple, des scripts d'interpréteur de commandes (shell) ou Perl,
ainsi que de la documentation.
- 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 peuvent
être trouvées dans le paquet debtags.
- Multi-Arch:
no|same|foreign|allowed
- Ce champ est utilisé pour indiquer comment ce paquet se comportera
sur les installations multi-architectures.
- no
- C'est la valeur par défaut quand le champ est omis ; dans ce
cas, ajouter le champ avec une valeur no explicite est
généralement inutile.
- same
- Ce paquet est co-installable avec lui-même, mais il ne doit pas
être utilisé pour satisfaire la dépendance d'un
paquet d'une autre architecture que la sienne.
- foreign
- Ce paquet n'est pas co-installable avec lui-même, mais il pourra
être autorisé pour permettre de satisfaire les
dépendances sans qualification d'architecture d'un paquet d'une
architecture différente de la sienne (si une dépendance a
une qualification d'architecture explicite, alors la valeur foreign
est ignorée).
- allowed
- Cela permet aux dépendances inverses d'indiquer dans leur champ
Depends qu'elles acceptent ce paquet d'une autre architecture en
qualifiant le nom du paquet avec :any, mais n'a pas d'autres
effets.
- Source:
nom-du-paquet-source [(version-source)]
- Le nom du paquet source d'où est issu ce paquet binaire, s'il est
différent du nom du paquet lui-même. Si la version des
sources diffère de la version du binaire, alors le
nom-du-paquet-source sera suivi par la version-source entre
parenthèses. Cela peut arriver par exemple sur un envoi seulement
binaire NMU (« non-maintainer upload »), ou
lorsqu'une version différente de binaire est fixée avec
« dpkg-gencontrol -v ».
- Subarchitecture:
valeur
- Kernel-Version:
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 procure un
nombre important de fonctionnalités. 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). Lors d'une installation, 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, le script
« prerm » d'un paquet est lancé avant
ceux des paquets listés dans son champ Depends.
- 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
alternatifs. Chaque ensemble est une liste de paquets séparés
par des barres verticales (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 est suivi éventuellement par un type
d'architecture après deux-points
« : », et par une contrainte sur le
numéro de version mise entre parenthèses.
Un nom de type d'architecture peut être un nom
d'architecture réelle de Debian (depuis dpkg 1.16.5) ou
any (depuis dpkg 1.16.2). S'il est omis, la valeur par
défaut est l'architecture du paquet binaire actuel. Un nom
d'architecture réelle de Debian correspondra exactement à
l'architecture pour ce nom de paquet, any correspondra à toute
architecture pour ce nom de paquet si le paquet a été
marqué Multi-Arch: allowed.
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 à niveau
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.
La syntaxe des champs Breaks, Conflicts et
Replaces est une liste de noms de paquets, séparés par
des virgules (et des espaces facultatives). Dans les champs Breaks et
Conflicts, la virgule sera lue comme un
« OU ». Un type d'architecture optionnel peut
être aussi ajouté au nom de paquet avec la même syntaxe
que ci-dessus, mais par défaut la valeur est any plutôt
que l'architecture du paquet binaire. On peut donner une version optionnelle
de la même façon que ci-dessus dans les champs Breaks,
Conflicts et Replaces.
- Enhances:
liste-de-paquets
- C'est une liste de paquets que ce paquet améliore. C'est similaire
à Suggests mais en sens inverse.
- Provides:
liste-de-paquets
- C'est une liste de paquets virtuels que ce paquet procure. 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
procurent chacun un paquet commun
(« mail-transport-agent ») duquel d'autres
paquets peuvent dépendre. Sendmail et exim peuvent ainsi servir
d'option valable pour satisfaire la dépendance. Cela permet aux
paquets qui dépendent d'un serveur de courrier de ne pas avoir
à connaître les noms de paquet de tous les serveurs de
courrier, en utilisant « | » comme
séparateur de liste.
La syntaxe du champ Provides est une liste de noms de
paquets, séparés par des virgules (et des espaces
facultatives). Un type d'architecture facultatif peut également
être ajouté au nom de paquet de la même façon
que ci-dessus. S'il est omis l'architecture par défaut est celle du
paquet binaire actuel. Un numéro de version précis
(égal à) optionnel peut être donné de la
même façon que ci-dessus (pris en compte depuis
dpkg 1.17.11).
- 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 au
logiciel de gestion de l'archive que des paquets source
supplémentaires doivent être conservés 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 le logiciel
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.
- Built-For-Profiles:
profile-list (obsolete)
- Ce champ sert à spécifier une liste, séparée
par des espaces, de profils de construction avec lesquels ce paquet
binaire a été construit (depuis dpkg 1.17.2 et
jusqu'à la version 1.18.18). Les informations
précédemment trouvées dans ce champ sont maintenant
dans le champ .buildinfo qui l'a remplacé.
- Auto-Built-Package:
liste-de-raisons
- Ce champ définit une liste, séparée par des espaces,
des raisons pour lesquelles ce paquet a été
généré automatiquement. Les paquets binaires
marqués avec ce champ n'apparaîtront pas dans le fichier
principal de contrôle des sources debian/control.
debug-symbols est la seule raison utilisée
actuellement.
- Build-Ids:
liste-identifiants-de-construction-elf
- Ce champ définit une liste, séparée par des espaces,
des identifiants de construction ELF. Il s'agit des identifiants uniques
d'objets ELF sémantiquement identiques, pour chacun de ces objets
présents dans le paquet.
Le format ou la manière de calculer chaque identifiant
de construction n'est pas défini par nature.
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.
The GNU family of grep utilities may be the "fastest grep in the west".
GNU grep is based on a fast lazy-state deterministic matcher (about
twice as fast as stock Unix egrep) hybridized with a Boyer-Moore-Gosper
search for a fixed string that eliminates impossible text from being
considered by the full regexp matcher without necessarily having to
look at every character. The result is typically many times faster
than Unix grep or egrep. (Regular expressions containing backreferencing
will run more slowly, however).
Le champ Build-Ids utilise un nom plutôt
générique à partir de son contexte original dans
l'objet ELF qui sert un objectif très spécifique et a un
format exécutable.
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe
Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute
erreur à <debian-l10n-french@lists.debian.org>.