dpkg-source
Section: dpkg suite (1)
Updated: 1970-01-01
Page Index
NOM
dpkg-source - Outil de manipulation des paquets sources Debian (.dsc).
SYNOPSIS
dpkg-source [
option...]
commande
DESCRIPTION
dpkg-source empaquette ou dépaquette une archive source Debian.
Aucune de ces commandes ne permet la combinaison de plusieurs options en une
seule et elles ne permettent pas d'indiquer la valeur d'une option dans un
argument séparé.
COMMANDES
- -x , --extract nom-de-fichier.dsc [répertoire-de-sortie]
-
Cette option sert à extraire un paquet source (--extract depuis
dpkg 1.17.14). Un seul argument sans option doit être donné : le nom du
fichier de contrôle des sources Debian (.dsc). Un deuxième argument sans
option peut également être donné pour indiquer le répertoire où extraire le
paquet source : ce répertoire ne doit pas déjà exister. Quand aucun
répertoire n'est indiqué, le paquet source est extrait dans un répertoire
source-version du répertoire courant.
dpkg-source lit, dans le fichier de contrôle, les noms des fichiers qui
composent le paquet source ; il suppose qu'ils sont dans le même répertoire
que le fichier .dsc.
Les fichiers extraits du paquet auront leurs propriétaires et permissions
définis à ceux attendus s'ils avaient été simplement créés. Les répertoires
et les fichiers exécutables auront une permission égale à 0777 et les
simples fichiers à 0666, les deux étant modifiées par le masque (umask) de
celui qui fait l'extraction. Si le répertoire parent est « setgid », les
répertoires extraits le seront aussi et tous les fichiers et répertoires
hériteront de sa propriété de groupe.
Si le paquet source utilise un format non standard (actuellement, cela
signifie tous les formats sauf le « 1.0 »), son nom sera enregistré dans
debian/source/format de sorte que la construction du paquet source
utilise le même format par défaut.
- -b, --build répertoire [paramètres-dans-un-format-spécifique]
-
Construit un paquet source (--build depuis dpkg 1.17.14). Le premier
argument sans option est pris comme nom du répertoire contenant
l'arborescence des sources debianisée (c'est-à-dire avec un sous-répertoire
debian et peut-être des modifications sur les fichiers d'origine). Selon le
format du paquet source utilisé pour construire le paquet, d'autres
paramètres peuvent être acceptés.
dpkg-source va construire le paquet source dans le premier format trouvé
dans la liste suivante : le(s) format(s) indiqué(s) avec le paramètre de la
ligne de commande --format, le format indiqué dans
debian/source/format, « 1.0 ». L'utilisation de « 1.0 » comme dernier
recours est obsolète et sera retirée dans le futur. Le format source devrait
toujours être indiqué dans debian/source/format. Voir la section
FORMATS DE PAQUET SOURCE pour une description plus détaillée des
différents formats de paquet source.
- --print-format répertoire
-
Affiche le format source qui serait utilisé pour construire le paquet source
si dpkg-source --build répertoire était utilisé (dans les mêmes
conditions et avec les mêmes options ; depuis dpkg 1.15.5).
- --before-build répertoire
-
Exécute le point d'entrée correspondant du format de paquet source (depuis
dpkg 1.15.8). Ce point d'entrée doit être utilisé avant toute construction
du paquet (dpkg-buildpackage l'utilise très tôt, avant même
debian/rules clean). Cette commande est idempotente et peut être lancée
plusieurs fois. Tous les formats source ne mettent pas en œuvre ce
branchement et ceux qui le font préparent l'arborescence source pour la
construction, par exemple en garantissant que les correctifs Debian sont
appliqués.
- --after-build répertoire
-
Exécute le point d'entrée correspondant du format de paquet source (depuis
dpkg 1.15.8). Ce point d'entrée doit être utilisé après toute construction
du paquet (dpkg-buildpackage l'utilise en dernier). Cette commande est
idempotente et peut être lancée plusieurs fois. Tous les formats source ne
mettent pas en œuvre ce branchement et ceux qui le font s'en servent pour
défaire ce qui a été fait par --before-build.
- --commit [répertoire] ...
-
Enregistre les modifications dans l'arborescence source décompressée dans
répertoire (depuis dpkg 1.16.1). Cette commande peut accepter des
paramètres supplémentaires selon le format source. Elle provoquera une
erreur pour les formats où cette opération n'a pas de signification.
- -?, --help
-
Affiche un message d'aide puis quitte. Les options de construction et
d'extraction spécifiques au format peuvent être montrées avec l'option
--format.
- --version
-
Affiche le numéro de version puis quitte.
OPTIONS
Options de construction générique
- -cfichier-de-contrôle
-
Indique le principal fichier de contrôle des sources où trouver les
renseignements. Par défaut, c'est le fichier debian/control. Lorsqu'un
chemin relatif est fourni, on considère qu'il est relatif au répertoire le
plus élevé de l'arborescence source.
- -lfichier-des-changements
-
Indique le journal des modifications où trouver des renseignements. Par
défaut, c'est le fichier debian/changelog. Lorsqu'un chemin relatif est
fourni, on considère qu'il est relatif au répertoire le plus élevé de
l'arborescence source.
- -Fformat-du-fichier-des-changements
-
Indique le format du fichier des changements. Voir dpkg-parsechangelog(1)
pour plus d'informations à propos des formats gérés.
- --format=valeur
-
Utilise le format indiqué pour la construction du paquet source (depuis
dpkg 1.14.17). Ce choix remplace le format indiqué dans
debian/source/format.
- -Vnom=valeur
-
Fixe la valeur d'une variable de substitution. Consultez deb-substvars(5)
pour une discussion sur la valeur de substitution.
- -Tfichier-substvars
-
Lit les variables de substitution dans fichier-substvars ; par défaut
aucun fichier n'est lu. Cette option peut être utilisée plusieurs fois pour
lire des variables de substitution depuis plusieurs fichiers (depuis
dpkg 1.15.6).
- -Dchamp=valeur
-
Remplace ou ajoute en sortie un champ dans le fichier de contrôle.
- -Uchamp
-
Supprime en sortie un champ dans le fichier de contrôle.
- -Zcompression, --compression=compression
-
Spécifie le niveau de compression à utiliser pour les fichiers archive et
diff créés (--compression depuis dpkg 1.15.5). Notez que cette option ne
causera pas la recompression des archives existantes, cela ne concerne que
les nouveaux fichiers. Les valeurs acceptées sont les suivantes : gzip,
bzip2, lzma et xz. L'option par défaut est xz pour les
formats 2.0 et plus récents, et gzip pour le format 1.0. xz n'est géré
que depuis dpkg 1.15.5.
- -zniveau, --compression-level=niveau
-
Niveau de compression à utiliser (--compression-level depuis
dpkg 1.15.5). Comme avec -Z cela ne concerne que les fichiers
nouvellement créés. Les valeurs prises possibles sont les suivantes : 1 à
9, best et fast. La valeur par défaut est 9 pour gzip et bzip2,
6 pour xz et lzma.
- -i[expression-rationnelle], --diff-ignore[=expression-rationnelle]
-
Il est possible de donner une expression rationnelle Perl pour filtrer les
fichiers qui doivent être éliminés de la liste des fichiers pour le « diff »
(--diff-ignore depuis dpkg 1.15.6). Cette liste est créée avec une
commande « find ». Si le fichier source en construction est un fichier
source de version 3 utilisant un système de suivi de versions, cette option
est utile pour ignorer les modifications non envoyées. Utiliser -i.*
les ignorera toutes.
L'option -i active cette fonction avec une expression rationnelle par
défaut (en préservant toutes les modifications faites avec l'expression
rationnelle par défaut par une utilisation précédente de
--extend-diff-ignore) qui couvre les fichiers de contrôle des plus usuels
systèmes de gestion de version, les fichiers de sauvegarde, les fichiers
d'échange et les répertoires utilisés par Libtool. Il ne peut y avoir qu'une
seule expression rationnelle active ; avec de multiples options -i, seule
la dernière mentionnée sera prise en compte.
C'est très utile pour supprimer des fichiers qui sont inclus dans le diff,
par exemple, si vous maintenez un source avec un système de contrôle de
version et que voulez construire un paquet source sans inclure des fichiers
et répertoires additionnels qu'il contient généralement (par exemple CVS/,
.cvsignore, .svn/). L'expression rationnelle par défaut est déjà très
exhaustive, mais si avez besoin de la remplacer, veuillez noter que par
défaut, il sait vérifier n'importe quelle partie d'un chemin, donc si vous
voulez trouver le début d'un nom de fichier ou des noms de fichiers
complets, vous devrez fournir les caractères spéciaux vous-même (par exemple
« (^|/) », « ($|/) »).
- --extend-diff-ignore=expression-rationnelle
-
L'expression rationnelle Perl indiquée complétera la valeur par défaut
utilisée par --diff-ignore et sa valeur courante si elle est définie
(depuis dpkg 1.15.6). Cela est effectué en concaténant
« |expression-rationnelle » à la valeur existante. Cette option est
pratique dans debian/source/options pour exclure certains fichiers
auto-créés de la création automatique de correctifs.
- -I[motif-fichier], --tar-ignore[=motif-fichier]
-
Avec cette option, le fichier est passé à l'option --exclude de tar(1)
quand on veut créer un fichier .orig.tar ou .tar (--tar-ignore depuis
dpkg 1.15.6). Par exemple, -ICVS fera que tar sautera les répertoires du
CVS quand il doit créer un fichier .tar.gz. On peut répéter cette option
pour exclure à partir de plusieurs motifs.
-I ajoute par défaut des options --exclude qui élimineront les
fichiers et les répertoires de contrôles des systèmes les plus connus de
contrôle de version, les fichiers d'échange et de sauvegarde et les
répertoires utilisés par Libtool.
Note: While they have similar purposes, -i and -I have very
different syntax and semantics. -i can only be specified once and takes a
perl compatible regular expression which is matched against the full
relative path of each file. -I can specified multiple times and takes a
filename pattern with shell wildcards. The pattern is applied to the full
relative path but also to each part of the path individually. The exact
semantic of tar's --exclude option is somewhat complicated, see
<https://www.gnu.org/software/tar/manual/tar.html#wildcards> for a full
documentation.
L'expression rationnelle et le motif par défaut pour les deux options
peuvent être trouvés dans la sortie de la commande --help.
Options d'extraction génériques
- --no-copy
-
Ne copie pas l'archive d'origine à côté de l'extraction du paquet source
(depuis dpkg 1.14.17).
- --no-check
-
Ne vérifie pas les signatures et les sommes de contrôle avant de
dépaqueter(depuis dpkg 1.14.17).
- --no-overwrite-dir
-
Ne pas remplacer le répertoire d'extraction s'il existe déjà (depuis
dpkg 1.18.8)
- --require-valid-signature
-
Refuse to unpack the source package if it doesn't contain an OpenPGP
signature that can be verified (since dpkg 1.15.0) either with the user's
trustedkeys.gpg keyring, one of the vendor-specific keyrings, or one of
the official Debian keyrings (/usr/share/keyrings/debian-keyring.gpg,
/usr/share/keyrings/debian-nonupload.gpg and
/usr/share/keyrings/debian-maintainers.gpg).
- --require-strong-checksums
-
Refuse de décompresser le paquet source s'il ne contient pas de somme de
contrôle robuste (depuis dpkg 1.18.7). Actuellement, SHA-256 est le seul
type de somme de contrôle considéré comme robuste.
- --ignore-bad-version
-
Transforme la vérification des mauvaises versions des paquets source en
avertissement non fatal (since dpkg 1.17.7). Cette option sera seulement
nécessaire quand on extrait des anciens paquets source avec des versions
cassées, pour préserver la compatibilité avec les versions précédentes.
FORMATS DE PAQUET SOURCE
If you don't know what source format to use, you should probably pick either
"3.0 (quilt)" or "3.0 (native)". See
<
https://wiki.debian.org/Projects/DebSrc3.0> for information on the
deployment of those formats within Debian.
Format : 1.0
Un paquet source dans ce format se compose soit d'un
.orig.tar.gz associé
à un
.diff.gz ou un simple
.tar.gz (dans ce cas, le paquet est appelé
natif
native). L'archive tar originale pourrait être accompagnée de façon
facultative d'une signature amont séparée
.orig.tar.gz.asc, extraction
prise en charge depuis dpkg 1.18.5.
Extraction
Extracting a native package is a simple extraction of the single tarball in
the target directory. Extracting a non-native package is done by first
unpacking the .orig.tar.gz and then applying the patch contained in the
.diff.gz file. The timestamp of all patched files is reset to the
extraction time of the source package (this avoids timestamp skews leading
to problems when autogenerated files are patched). The diff can create new
files (the whole debian directory is created that way) but cannot remove
files (empty files will be left over) and cannot create or change symlinks.
Construction
Construire un paquet natif revient simplement à créer une archive tar avec
le répertoire du source. La création d'un paquet non natif consiste à
extraire l'archive d'origine dans un répertoire séparé « .orig » puis à
régénérer le .diff.gz en comparant le répertoire du paquet source avec
le répertoire « .orig ».
Options de construction (avec --build) :
Si l'on donne un second argument, ce sera le nom du répertoire source
d'origine ou le nom du fichier tar ou bien une chaîne vide si le paquet est
un « Debian pure souche » et n'a donc pas de fichiers « diffs » pour sa
« debianisation ». S'il n'y a pas de second argument, dpkg-source cherche
le fichier tar des sources d'origine
paquet_version-amont.orig.tar.gz ou bien le répertoire source
d'origine répertoire.orig selon les paramètres -sX.
Les options -sa, -sp, -sk, -su et -sr ne remplacent pas les
fichiers tar ou les répertoires existants. Pour cela, il faut utiliser les
options -sA, -sP, -sK, -sU et -sR.
- -sk
-
Spécifie que le source d'origine est attendu sous forme tar ; par défaut,
paquet_version-amont.orig.tarextension. Il le laisse en place
en tant que fichier tar ou le copie dans le répertoire en cours s'il n'y est
pas déjà. Le fichier sera dépaqueté dans répertoire.orig pour la
génération du fichier diff.
- -sp
-
Comme -sk mais supprimera le répertoire à nouveau par la suite.
- -su
-
Quand on spécifie que le source d'origine est un répertoire ; la valeur par
défaut est le répertoire paquet-version-amont.orig et
dpkg-source crée une nouvelle archive du source d'origine.
- -sr
-
Comme -su mais supprimera ce répertoire après utilisation.
- -ss
-
Indique que le source d'origine est disponible à la fois comme un répertoire
et comme un fichier tar. dpkg-source se servira du répertoire pour créer
le « diff », mais du fichier tar pour créer le fichier .dsc. Aussi, faire
attention avec cette option. Si le répertoire et le fichier tar ne
correspondent pas, il en résulte une mauvaise archive source.
- -sn
-
Indique de ne pas chercher de source d'origine et de ne pas créer de
« diff ». Le second argument, s'il existe, doit être une chaîne vide. Cela
sert pour les paquets Debian pure souche qui n'ont pas un source d'origine
distincte et donc pas de fichier « diff » de debianisation.
- -sa or -sA
-
Indique comme source d'origine soit un fichier tar, soit un répertoire --- le
deuxième argument, s'il existe, doit être l'un d'eux ou bien une chaîne vide
(cela revient à utiliser l'option -sn). Quand un fichier tar existe, il
est dépaqueté pour créer le fichier « diff » ; ensuite il est supprimé (cela
revient à utiliser l'option -sp) ; quand un répertoire est trouvé, il est
empaqueté et dpkg-source crée le source d'origine et supprime ensuite ce
répertoire (cela revient à utiliser l'option -sr) ; quand ni l'un ni
l'autre n'est trouvé, dpkg-source suppose que le paquet ne possède pas de
fichier « diff » de debianisation, mais seulement une simple archive source
(cela revient à utiliser l'option -sn). Quand les deux sont trouvés,
dpkg-source ignore le répertoire et le remplace si l'option -sA a été
spécifiée (cela revient à utiliser l'option -sP) ou il provoque une
erreur si l'option -sa a été spécifiée. L'option par défaut est -sa.
- --abort-on-upstream-changes
-
Ce processus échoue si le fichier de différences contient des modifications
apportées à des fichiers en dehors du sous-répertoire debian (depuis
dpkg 1.15.8). Cette option n'est pas autorisée dans debian/source/options
mais peut être utilisée dans debian/source/local-options.
options d'extraction (avec --extract) :
Dans tous ces cas, l'arborescence existante des sources d'origine est
supprimée.
- -sp
-
Quand on extrait le répertoire source d'origine (s'il existe), il est
conservé en tant que fichier tar. S'il n'est pas déjà dans le répertoire
courant ou si ce répertoire contient un fichier différent, le fichier tar
est copié dans ce répertoire. (Cela est le comportement par défaut).
- -su
-
Dépaquetage de l'arborescence du répertoire source d'origine.
- -sn
-
Assure que le répertoire source d'origine ne sera ni copié dans le
répertoire en cours, ni dépaqueté. Si une arborescence source d'origine est
présente dans le répertoire courant, elle est toujours supprimée.
Toutes les options -sX s'excluent mutuellement. Si vous en indiquez
plusieurs, seule la dernière sera prise en compte.
- --skip-debianization
-
Passe l'étape d'application du fichier de différences Debian aux sources
amont (depuis dpkg 1.15.1).
Format : 2.0
Extraction prise en charge depuis dpkg 1.13.9, construction depuis
dpkg 1.14.8. Aussi connu sous le nom de « wig&pen ». Ce format n'est pas
recommandé pour une utilisation massive, le format « 3.0 (quilt) » le
remplace. Wig&pen a été la première spécification d'une nouvelle génération
de format de paquet source.
Le comportement de ce format est le même que pour le format « 3.0 (quilt) »
sauf qu'il n'utilise pas de liste explicite de correctifs. Tous les fichiers
dans debian/patches/ correspondant à l'expression rationnelle Perl
[\w-]+ doivent être des correctifs valables : ils sont appliqués au
moment de l'extraction.
Lors de la construction d'un nouveau paquet source, toute modification
apportée au source amont est enregistrée dans un correctif nommé
zz_debian-diff-auto.
Format : 3.0 (native)
Pris en charge depuis dpkg 1.14.17. Ce format est une extension du format de
paquet natif tel que défini dans le format 1.0. Il gère toutes les méthodes
de compression et ignore par défaut tout fichier et répertoire spécifique à
VCS ainsi que de nombreux fichiers temporaires (voir la valeur par défaut
associée à l'option
-I dans la sortie de
--help).
Format : 3.0 (quilt)
Pris en charge depuis 1.14.17. Un paquet source dans ce format contient au
moins une archive tar d'origine (
.orig.tar.ext où
ext peut être
gz,
bz2 lzma et
xz) et une archive tar debian
(
.debian.tar.ext). Il peut également contenir d'autres archives tar
d'origine (
.orig-composant.tar.ext).
composant ne peut être
constitué que de caractères alphanumériques (« a-zA-Z0-9 ») et de tirets
(« - »). Chaque archive tar originale peut être accompagnée de façon
facultative d'une signature amont séparée (
.orig.tar.ext.asc et
.orig-composant.tar.ext.asc), extraction prise en charge
depuis dpkg 1.17.20, construction depuis dpkg 1.18.5.
Extraction
L'archive principale tar d'origine est extraite tout d'abord, puis toutes
les autres archives tar d'origine sont extraites dans des sous-répertoires
dont le nom est formé à partir de la partie composant de leur
nom. L'archive tar Debian est extraite du répertoire source, après la
suppression de tout répertoire debian existant. Notez que l'archive tar
Debian doit contenir un sous-répertoire debian, mais elle peut également
contenir des fichiers binaires en dehors de ce répertoire (voir l'option
--include-binaries).
All patches listed in debian/patches/vendor.series or
debian/patches/series are then applied, where vendor will be the
lowercase name of the current vendor, or debian if there is no vendor
defined. If the former file is used and the latter one doesn't exist (or is
a symlink), then the latter is replaced with a symlink to the former. This
is meant to simplify usage of quilt to manage the set of patches.
Vendor-specific series files are intended to make it possible to serialize
multiple development branches based on the vendor, in a declarative way, in
preference to open-coding this handling in debian/rules. This is
particularly useful when the source would need to be patched conditionally
because the affected files do not have built-in conditional occlusion
support. Note however that while dpkg-source parses correctly series
files with explicit options used for patch application (stored on each line
after the patch filename and one or more spaces), it does ignore those
options and always expects patches that can be applied with the -p1
option of patch. It will thus emit a warning when it encounters such
options, and the build is likely to fail.
Notez que lintian(1) émettra des avertissements sans condition lors de
l'utilisation de séries de distributeur du fait d'une règle controversée
particulière de Debian qui ne devrait pas affecter une utilisation externe ;
pour les faire taire, le profil lintian de dpkg peut être utilisé en passant
l'option «--profile dpkg» à lintian(1).
La date de tous les fichiers correctifs est celle du moment où se déroule
l'extraction du paquet source (cela évite les horodatages faux menant à des
problèmes lorsque des fichiers générés automatiquement sont modifiés).
Au contraire du comportement par défaut de quilt, les correctifs doivent
s'appliquer sans décalage (« fuzz »). Quand cela n'est pas le cas, il est
suggéré de les rafraîchir avec quilt sinon dpkg-source se terminera
avec une erreur en tentant de les appliquer.
Similaire au comportement par défaut de quilt, les modifications peuvent
aussi supprimer des fichiers.
Le fichier .pc/applied-patches est créé si certains correctifs ont été
appliqués au cours de l'extraction.
Construction
Les originaux de toutes les archives tar trouvées dans le répertoire courant
sont extraits dans un répertoire temporaire en suivant la même logique que
pour le dépaquetage, le répertoire debian est copié dans le répertoire
temporaire, et tous les correctifs excepté le correctif automatique
debian-changes-version ou debian-changes, selon
--single-debian-patch) sont appliquées. Le répertoire temporaire est
comparé à celui du paquet source. Si le fichier de différences n'est pas
vide, la construction échoue à moins que --single-debian-patch ou
--auto-commit aient été utilisés, et dans ce cas le diff est stocké dans
le correctif automatique. Si le correctif automatique est créé ou supprimé,
il est ajouté ou supprimé dans le fichier « series » et les métadonnées de
quilt.
Any change on a binary file is not representable in a diff and will thus
lead to a failure unless the maintainer deliberately decided to include that
modified binary file in the debian tarball (by listing it in
debian/source/include-binaries). The build will also fail if it finds
binary files in the debian sub-directory unless they have been allowed
through debian/source/include-binaries.
Le répertoire debian mis à jour et la liste des binaires modifiés sont
ensuite utilisés pour recréer l'archive tar debian.
Le diff généré automatiquement n'inclut pas les changements spécifiques sur
les fichiers VCS ainsi sur que de nombreux fichiers temporaires (pour la
valeur par défaut associée à l'option -i, voir la sortie de
--help). En particulier, le répertoire .pc utilisé par quilt est
ignoré lors de la génération automatique du correctif.
Note: dpkg-source --before-build (and --build) will ensure that
all patches listed in the series file are applied so that a package build
always has all patches applied. It does this by finding unapplied patches
(they are listed in the series file but not in .pc/applied-patches),
and if the first patch in that set can be applied without errors, it will
apply them all. The option --no-preparation can be used to disable this
behavior.
Enregistrement des modifications
- --commit [répertoire] [nom-du-correctif] [fichier-de-correctif]
-
Crée un correctif correspondant aux modifications locales non gérées par le
système de gestion de correctifs quilt et les intègre dans la liste des
correctifs sous le nom nom-du-correctif. Si le nom est omis, il sera
demandé interactivement. Si fichier-de-correctifs est indiqué, il est
utilisé comme fichier de modifications locales à intégrer. Une fois intégré,
un éditeur est lancé afin de permettre d'ajouter des méta-informations dans
l'en-tête du correctif.
Le fait de passer fichier-de-correctifs est essentiellement utile après
un échec de construction qui prégénère ce fichier. Sur ces bases, le fichier
est supprimé après intégration. Veuillez également noter que les
modifications contenues dans le fichier de correctifs doivent déjà être
appliquées dans l'arborescence et que les fichiers modifiés par le correctif
ne doivent pas comporter de modifications supplémentaires.
Si la création de correctif détecte des fichiers binaires modifiés, ils
seront ajoutés automatiquement à debian/source/include-binaries afin de
pouvoir être inclus dans l'archive debian (de façon analogue à ce que ferait
dpkg-source --include-binaries --build).
Options de construction
- --allow-version-of-quilt-db=version
-
Autorise dpkg-source à construire le fichier si la version des
métadonnées de quilt est celle indiquée, même si dpkg-source n'en n'a
pas connaissance (depuis dpkg 1.15.5.4). En fait, cela indique que la
version indiquée des métadonnées de quilt est compatible avec la
version 2 que dpkg-source gère. La version des métadonnées de quilt
est conservée dans .pc/.version.
- --include-removal
-
N'ignore pas les fichiers supprimés et les inclut dans le fichier de
modifications généré automatiquement.
- --include-timestamp
-
Inclut la date dans le correctif généré automatiquement.
- --include-binaries
-
Ajoute tous les binaires modifiés dans l'archive tar debian. Les ajoute
aussi à debian/source/include-binaries : elles seront ajoutées par défaut
dans les constructions suivantes aussi cette option n'est donc plus
nécessaire.
- --no-preparation
-
N'essaye pas de préparer l'arbre de la construction en appliquant les
correctifs qui ne sont apparemment pas appliqués (depuis dpkg 1.14.8).
- --single-debian-patch
-
Utilise debian/patches/debian-changes au lieu de
debian/patches/debian-changes-version comme nom du correctif
automatique créé au cours de la construction (depuis dpkg 1.15.5.4). Cette
option est particulièrement pratique lorsque le paquet est géré avec un
outil de gestion de versions et qu'un jeu de correctifs ne peut être créé de
façon fiable. Dans ce cas, les différences avec la version amont doivent
être conservées dans un correctif unique. Cette option serait indiquée dans
debian/source/local-options et accompagnée par un fichier
debian/source/local-patch-header qui explique la meilleure méthode pour
revoir les corrections spécifiques à Debian, par exemple dans le
gestionnaire de versions utilisé.
- --create-empty-orig
-
Crée automatiquement l'archive principale tar d'origine vide si elle est
manquante et qu'il existe des archives tar d'origine additionnelles (depuis
dpkg 1.15.6). Cette option peut être utilisée lorsque le paquet source est
une collection de différents sources amont et qu'il n'existe pas de logiciel
« principal ».
- --no-unapply-patches, --unapply-patches
-
Par défaut, dpkg-source retire automatiquement les correctifs dans le
point d'entrée --after-build s'ils ont été appliqués pendant
--before-build (--unapply-patches depuis dpkg 1.15.8,
--no-unapply-patches depuis dpkg 1.16.5). Ces options permettent de
désactiver ou activer unilatéralement ce retrait des correctifs. Elles ne
sont permises que dans debian/source/local-options afin que tous les
paquets source créés aient le même comportement par défaut.
- --abort-on-upstream-changes
-
Ce processus échouera si un correctif automatique a été créé (depuis
dpkg 1.15.8). Cette option peut servir à vérifier que toutes les
modifications ont été enregistrées correctement dans des correctifs quilt
distincts avant la construction du paquet source. Elle n'est pas autorisée
dans debian/source/options mais peut prendre place dans
debian/source/local-options.
- --auto-commit
-
Pas d'échec du processus de construction si un correctif automatique a été
créé : il est enregistré automatiquement dans le fichier series de quilt.
Options d'extraction
- --skip-debianization
-
Passe l'étape d'extraction de l'archive tar debian des sources amont (depuis
dpkg 1.15.1).
- --skip-patches
-
Ne pas appliquer des correctifs à la fin de l'extraction (depuis
dpkg 1.14.18).
Format : 3.0 (custom)
Pris en charge depuis dpkg 1.14.17. Ce format est particulier. Il ne
représente pas un réel format de paquet source mais peut être utilisé pour
créer des paquets sources avec des fichiers arbitraires.
Options de construction
Tous les arguments qui ne sont pas des options sont pris pour des fichiers à
intégrer dans le paquet source généré. Ils doivent exister et être de
préférence dans le répertoire courant. Au moins un fichier doit être donné.
- --target-format=valeur
-
Required. Définit le format réel du paquet source généré. Le fichier
généré .dsc contiendra cette valeur dans son champ format et non « 3.0
(custom) ».
Format : 3.0 (git)
Pris en charge depuis dpkg 1.14.17. Ce format est expérimental.
Un paquet source qui utilise ce format est constitué d'un seul ensemble d'un
dépôt git .git qui contient les sources du paquet. Il peut également
exister un fichier .gitshallow qui donne les révisions d'un clone git
« shallow ».
Extraction
Cet ensemble est cloné sous forme d'un dépôt git dans le répertoire
cible. S'il existe un fichier .gitshallow, il est installé en tant que
.git/shallow dans le dépôt git cloné.
Veuillez noter que, par défaut, le nouveau dépôt aura la même branche
récupérée que celle qui était récupérée dans les sources d'origine (souvent
« master » mais cela peut être tout à fait autre chose). Toutes les autres
branches seront disponibles sous remotes/origin.
Construction
Avant d'aller plus loin, quelques vérifications sont effectuées afin de
s'assurer qu'il n'existe aucun changement non ignoré non soumis.
git-bundle(1) permet de créer un ensemble à partir du dépôt git. Par
défaut, toutes les branches et étiquettes du dépôt sont incluses dans cet
ensemble.
Options de construction
- --git-ref=réf
-
Permet d'indiquer une référence git à inclure dans l'ensemble
git. L'utilisation de cette option désactive le comportement par défaut qui
est d'inclure toutes les branches et étiquettes. Cette option peut être
utilisée plusieurs fois. Le paramètre réf peut être le nom d'une branche
ou une étiquette à inclure. Il peut également être tout paramètre que l'on
peut passer à git-rev-list(1). Par exemple, pour n'inclure que la branche
« master », on peut utiliser --git-ref=master. Pour inclure toutes les
étiquettes et toutes les branches, sauf la branche privée, on peut utiliser
-git-ref=--all -- git-ref=^private.
- --git-depth=nombre
-
Crée un clone « shallow » dont l'historique est tronqué au nombre indiqué de
révisions.
Format : 3.0 (bzr)
Pris en charge depuis dpkg 1.14.17. Ce format est expérimental. Il crée une
archive tar contenant le dépôt bzr correspondant.
Extraction
L'archive tar est décompressée puis bzr est utilisé afin de récupérer la
branche courante.
Construction
Avant d'aller plus loin, quelques vérifications sont effectuées afin de
s'assurer qu'il n'existe aucun changement non ignoré non soumis.
Ensuite, la partie spécifique du répertoire source du gestionnaire de
versions est copiée dans un répertoire temporaire. Avant que ce répertoire
temporaire ne soit empaqueté dans une archive tar, divers nettoyages sont
effectués pour économiser de l'espace.
DIAGNOSTICS
aucun format source indiqué dans debian/source/format
Le fichier
debian/source/format devrait toujours exister et indiquer le
format source souhaité. Pour préserver la compatibilité avec d'anciennes
versions, le format « 1.0 » est implicite quand le fichier n'existe pas. Il
est déconseillé de dépendre de ce comportement qui pourrait être modifié
dans de futures versions de
dpkg-source, qui échoueront alors en
l'absence d'une mention explicite de format.
Cela est dû au fait que le format « 1.0 » n'est plus le format recommandé,
qu'il est conseillé de choisir un des formats les plus récents (« 3.0
(quilt) » ou « 3.0 (native) ») mais que dpkg-source ne le fera pas
automatiquement. Si vous souhaitez continuer à utiliser l'ancien format, il
est nécessaire d'être explicite et indiquer « 1.0 » dans
debian/source/format.
le fichier de différences modifie les fichiers amont suivants
Lors de l'utilisation du format source « 1.0 », il est déconseillé de
modifier directement les fichiers amont car les modifications restent alors
cachées et souvent non documentées dans le fichier diff.gz. Au contraire, il
est conseillé de conserver les modifications sous forme de correctifs dans
le répertoire debian et de les appliquer au moment de la construction. Pour
éviter ces opérations plus complexes, vous pouvez également choisir le
format « 3.0 (quilt) » qui permet ces opérations de manière native.
impossible d'identifier les changements de fichier
Les modifications des sources amont sont en général conservées dans des
fichiers de correctifs mais certaines modifications ne peuvent être
représentées sous forme de tels fichiers qui ne peuvent modifier que des
fichiers texte. Si vous essayez de remplacer un fichier avec un objet d'un
type différent (par exemple remplacer un fichier par un lien ou un
répertoire), ce message d'erreur s'affichera.
le fichier fichier, nouvellement créé, ne sera pas représenté dans le fichier de différences
Les fichiers vides ne peuvent pas être créés avec des correctifs. En
conséquence, la modification n'est pas enregistrée dans le paquet source, ce
qui provoque cet avertissement.
le mode exécutable permissions de fichier ne sera pas représenté dans le fichier de différences
Les fichiers de correctifs n'enregistrent pas les permissions de fichiers
et, en conséquence, les permissions des exécutables ne sont pas enregistrées
dans le paquet source, ce qui provoque cet avertissement.
le mode spécial permissions de fichier ne sera pas représenté dans le fichier de différences
Les fichiers correctifs n'enregistrent pas les permissions de fichiers et,
en conséquence, les permissions modifiées ne sont pas enregistrées dans le
paquet source, ce qui provoque cet avertissement.
ENVIRONNEMENT
- DPKG_COLORS
-
Définit le mode de couleur (depuis dpkg 1.18.5). Les valeurs actuellement
acceptées sont auto (par défaut), always et never.
- DPKG_NLS
-
Si cette variable est définie, elle sera utilisée pour décider l'activation
de la prise en charge des langues (NLS - Native Language Support), connu
aussi comme la gestion de l'internationalisation (ou i18n) (depuis
dpkg 1.19.0). Les valeurs permises sont : 0 et 1 (par défaut).
- SOURCE_DATE_EPOCH
-
Si cette option est utilisée, elle sera utilisée comme horodatage (en
seconde à partir de « l'epoch ») pour fixer le « mtime » dans les entrées du
fichier tar(5).
- VISUAL
-
- EDITOR
-
Utilisé par les modules de format source « 2.0 » et « 3.0 (quilt) ».
- GIT_DIR
-
- GIT_INDEX_FILE
-
- GIT_OBJECT_DIRECTORY
-
- GIT_ALTERNATE_OBJECT_DIRECTORIES
-
- GIT_WORK_TREE
-
Utilisés par les modules de format source « 3.0 (git) ».
FICHIERS
debian/source/format
Ce fichier contient sur une seule ligne le format à utiliser pour construire
le paquet source (les formats acceptés sont décrits plus haut). Il ne doit
pas contenir d'espace avant ou après l'indication du format.
debian/source/include-binaries
This file contains a list of pathnames of binary files (one per line)
relative to the source root directory that should be included in the debian
tarball. Leading and trailing spaces are stripped. Lines starting with
'
#' are comments and are skipped. Empty lines are ignored.
debian/source/options
Ce fichier contient la liste des options qui seront automatiquement ajoutées
au jeu d'options de ligne de commande lors de l'appel à
dpkg-source
--build ou
dpkg-source --print-format. Des options comme
--compression et
--compression-level conviennent bien pour ce fichier.
Chaque option doit être placée sur une ligne distincte. Les lignes vides et
les lignes commençant par le caractère « # » sont ignorées. Les
caractères initiaux « -- » doivent être retirés et les options courtes ne
peuvent pas être utilisées. Des espaces optionnelles sont autorisées autour
du symbole « = », ainsi que des guillemets optionnels autour de la valeur
d'une option donnée. Voici un exemple d'un tel fichier :
# let dpkg-source create a debian.tar.bz2 with maximal compression
compression = "bzip2"
compression-level = 9
# use debian/patches/debian-changes as automatic patch
single-debian-patch
# ignore changes on config.{sub,guess}
extend-diff-ignore = "(^|/)(config.sub|config.guess)$"
Note: format options are not accepted in this file, you should use
debian/source/format instead.
debian/source/local-options
Identique à
debian/source/options mais n'est pas enregistré dans le
paquet source créé. Ce fichier peut être utile pour conserver une préférence
propre au responsable ou au dépôt de gestionnaire de versions où le paquet
source est géré.
debian/source/local-patch-header
debian/source/patch-header
Texte en format libre qui sera ajouté au début du correctif automatique créé
dans les formats « 2.0 » et « 3.0 (quilt) ».
local-patch-header n'est pas
inclus dans le paquet source créé alors que
patch-header l'est.
debian/patches/distributeur.series
debian/patches/series
Ce fichier comporte la liste de toutes les correctifs qui ont été appliqués
(dans l'ordre indiqué) aux sources amont. Les espaces situées avant et après
les noms sont ignorées. L'argument
distributeur sera le nom en minuscules
du distributeur ou
debian si aucun distributeur n'est défini. Si le
fichier de séries propre au distributeur n'existe pas, le fichier de séries
sans distributeur sera utilisé. Les lignes commençant par «
# » sont des
commentaires et sont ignorées, ainsi que les lignes vides. Les autres lignes
débutent par le nom du fichier de correctifs (relatif au répertoire
debian/patches/) et se terminent à la première espace ou à la fin de la
ligne. Des options facultatives de
quilt peuvent être ajoutées jusqu'à la
fin de la ligne ou jusqu'au premier caractère «
# » précédé par une ou
plusieurs espaces (ce qui indique le début d'un commentaire se terminant à
la fin de la ligne).
BOGUES
Le moment où se déroule le remplacement d'un champ par rapport à certaines
déterminations de champ affichées sur la sortie standard est plutôt
embrouillé.
VOIR AUSSI
deb-src-control(5),
deb-changelog(5),
dsc(5).
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>.