deb-buildinfo - Format des fichiers d'informations de construction
de Debian
Chaque construction de paquet source Debian peut enregistrer les
informations de construction dans un fichier de contrôle
.buildinfo qui contient un certain nombre de champs au format
deb822(5).
Chaque champ commence par une étiquette, telle que
Source ou Binary (la casse n'importe pas), suivie d'un
« : » et du contenu du champ (sensible à
la casse à moins que cela ne soit stipulé autrement). 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 dans le cas des champs à lignes multiples
Binary-Only-Changes, Installed-Build-Depends,
Environment, Checksums-Md5, Checksums-Sha1 et
Checksums-Sha256, voir ci-dessous).
Les données de contrôle pourraient être
incluses dans une signature OpenPGP « ASCII
Armored », comme spécifié dans la RFC4880.
Le nom du fichier .buildinfo dépendra du type de
construction et sera aussi spécifique que nécessaire mais pas
plus ; lorsque la construction inclut any, le nom sera
nom-source_version-binaire_arch.buildinfo,
ou sinon pour une construction all le nom sera
nom-source_binary-version_all.buildinfo
ou encore pour une construction qui inclut source le nom sera
nom-source_version-source_source.buildinfo.
- Format:
version-format (requis)
- La valeur de ce champ déclare la version du format du fichier. La
syntaxe de la valeur du champ est un numéro de version avec un
composant majeur et mineur. Les modifications incompatibles avec les
versions précédentes du format incrémenteront la
version majeure, tandis que les modifications compatibles (telles que les
ajouts de champ) incrémenteront la version mineure. La version de
format actuelle est 1.0.
- Source:
nom-source [(version-source)] (requis)
- Le nom du paquet source. Si la version du source diffère de la
version binaire, alors le nom-source sera suivi par une
version-source entre parenthèses. Cela peut arriver quand la
construction concerne un envoi seulement binaire NMU
(« non-maintainer upload »).
- Binary:
liste-paquets-binaires (requis selon le contexte)
- Ce champ coupé est une liste de paquets binaires construits
séparés par des espaces. Si la construction ne concerne que
les sources, le champ est omis (depuis dpkg 1.20.0).
- Architecture:
liste-architectures (requis)
- Ce champ, séparé par des espaces, liste les architectures
des fichiers actuellement en construction. Voici quelques architectures
habituelles : amd64, armel, i386, etc.
Remarquez que l'option all signifie que le paquet est
indépendant de toute architecture. Si le source du paquet est aussi
en construction, l'entrée spéciale source est aussi
présente. Les architectures joker ne doivent jamais être
présentes dans la liste.
- 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).
- Binary-Only-Changes:
- entrées-du-changelog
- Ce champ à lignes multiples contient le texte
concaténé des entrées de changelog pour un envoi
seulement binaire (binNMU), si c'est le cas. Pour faire de ce champ un
champ à lignes multiples valable, les lignes vides sont
remplacées par un point « . » et
toutes les lignes sont indentées par une seule espace. Le contenu
exact dépend du format du changelog.
- Checksums-Md5:
(requis)
- Checksums-Sha1:
(requis)
- Checksums-Sha256:
(requis)
- somme-de-contrôle taille
nom-du-fichier
- Ces champs à lignes multiples contiennent la liste des fichiers
avec la somme de contrôle et la taille de chacun. Ces champs ont la
même syntaxe et ne diffèrent que par l'algorithme de somme
de contrôle utilisé : MD5 pour Checksums-Md5,
SHA-1 pour Checksums-Sha1 et SHA-256 pour Checksums-Sha256.
La première ligne de la valeur du champ (la partie sur
la même ligne que le nom du champ suivi par deux-points) est
toujours vide. Le contenu du champ est exprimé par des lignes de
continuation, une ligne par fichier. Chaque ligne consiste en des
entrées séparées par des espaces décrivant
le fichier :la somme de contrôle, la taille du fichier et
le nom du fichier.
Ces champs listent tous les fichiers qui composent la
construction.
- Build-Origin:
nom
- Nom de la distribution dont ce paquet provient.
- Build-Architecture:
arch (requis)
- L'architecture Debian pour l'installation des paquets en construction. Les
architectures habituelles sont amd64, armel, i386,
etc.
- Build-Date:
date-construction
- La date à laquelle le paquet a été construit. Elle
peut être au même format que la date dans les entrées
de deb-changelog(5).
- Build-Kernel-Version:
version-du-noyau-de-construction
- La publication et la version (dans un format non spécifié)
du noyau exécuté dans le système de construction. Ce
champ va seulement être présent si le constructeur l'a
demandé explicitement, pour éviter de révéler
des informations potentiellement sensibles.
- Build-Path:
chemin-de-construction
- Le chemin de construction absolu qui correspond à l'arborescence
des sources dépaquetée. Ce champ va seulement être
présent si le distributeur l'a autorisé grâce
à une recherche de motif pour éviter de
révéler des informations potentiellement sensibles.
Dans Debian et ses dérivés, seuls les chemins de
construction débutant par /build/ émettront ce
champ.
- Build-Tainted-By:
- liste-des-raisons-de-souillure
- Ce champ coupé est une liste, séparée par des
espaces, non exhaustive des étiquettes de raison (formées de
caractères alphanumériques et de tirets) qui
définissent pourquoi la construction actuelle a été
souillée (depuis dpkg 1.19.5).
Dans Debian et ses dérivées, les
étiquettes de raisons suivantes peuvent être
émises.
- merged-usr-via-aliased-dirs
- Le système possède un /usr fusionné au moyen
de répertoires alias (anciennement connus sous le nom de
merged-usr-via-symlinks - fusionné au moyen de liens
symboliques). Cela peut tromper dpkg-query,
dpkg-statoverride, dpkg-trigger, update-alternatives
et tous les autres outils qui utilisent les noms de chemin comme
clés de leurs bases de données, parce que cela crée
des problèmes d'alias du système de fichiers, et perturbe la
compréhension du système de fichiers que dpkg a
enregistré dans sa base de données. Pour des systèmes
construits qui codent en dur les noms de chemin vers des binaires ou des
bibliothèques particuliers sur les objets produits, cela peut aussi
produire des paquets qui seront incompatibles avec des systèmes de
fichiers sans /usr fusionné.
- usr-local-has-configs
- Le système a des fichiers de configuration dans
/usr/local/etc.
- usr-local-has-includes
- Le système a des fichiers d'en-tête dans
/usr/local/include.
- usr-local-has-programs
- Le système a des programmes dans /usr/local/bin ou
/usr/local/sbin.
- usr-local-has-libraries
- Le système a des bibliothèques statiques ou partagées
dans /usr/local/lib.
- can-execute-cross-built-programs
- Le système peut exécuter des programmes de construction
croisée soit directement, soit au moyen d'une couche
d'émulation.
depuis dpkg 1.21.10).
- Installed-Build-Depends:
(requis)
- liste-paquets
- La liste des paquets installés et configurés que pourrait
affecter le processus de construction du paquet.
La liste contient le nom de chaque paquet,
éventuellement avec une qualification d'architecture pour celles
différentes, avec une restriction de version précise,
séparés par des virgules.
La liste inclut tous les paquets essentiels, les paquets
listés dans les champs de contrôle des sources
Build-Depends, Build-Depends-Arch,
Build-Depends-Indep, chaque dépendance interne
spécifique au distributeur, et toutes leurs dépendances
récursives. Dans Debian et ses dérivés, une
dépendance interne est build-essential.
Pour les dépendances provenant des champs de
contrôle des sources, toutes les alternatives de
dépendance et tous les fournisseurs de paquets virtuels
dépendants seront inclus.
- Environment:
- liste-de-variables
- La liste des variables d'environnement qui sont connues pour affecter le
processus de construction du paquet. Chaque variable d'environnement est
suivie d'un signe égal (« = ») et de la
valeur de la variable protégée avec des guillemets doubles
(« " ») et des barres obliques inverses
(« \\ »).
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe
Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute
erreur à <debian-l10n-french@lists.debian.org>.