dpkg-source(1)

NOM
dpkg-source - outil de manipulation des paquets sources Debian (.dsc).

SYNOPSIS
dpkg-source [option...] command

DESCRIPTION
dpkg-source empaquete ou dépaquete 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 fichier.dsc [répertoire-de-sortie]
    Cette option sert à extraire un paquet source. On doit donner un seul argument sans option : le nom du fichier de contrôle des sources Debian (.dsc). Un deuxième argument sans option peut être donné pour indiquer le répertoire où extraire le paquet source, cela ne doit pas 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 le même système de propriété et de permission que s'ils avaient été simplement créés -- les répertoires et les fichiers exécutables auront un système de permission égal à 0777 et les simples fichiers, 0666 ; ces deux systèmes étant modifiés par le masque 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 du système de propriété de ce 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 répertoire [paramètres-dans-un-format-spécifique]
    Construit un paquet source. Le premier argument non optionnel est pris comme nom du répertoire contenant l'arborescence des sources Debianisées (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 will build the source package with the first format found in this ordered list: the format indicated with the --format command line option, the format indicated in debian/source/format, "1.0". The fallback to "1.0" is deprecated and will be removed at some point in the future, you should always document the desired source format in debian/source/format. See section SOURCE PACKAGE FORMATS for an extensive description of the various source package formats.

--print-format répertoire
    Affiche le format source qui serait utilisé pour construire le paquet source si dpkg-source -b répertoire était utilisé (dans les mêmes conditions et avec les mêmes options).

--before-build répertoire
    Run the corresponding hook of the source package format. This hook is called before any build of the package (dpkg-buildpackage calls it very early even before debian/rules clean). This command is idempotent and can be called multiple times. Not all source formats implement something in this hook, and those that do usually prepare the source tree for the build for example by ensuring that the Debian patches are applied.

--after-build répertoire
    Run the corresponding hook of the source package format. This hook is called after any build of the package (dpkg-buildpackage calls it last). This command is idempotent and can be called multiple times. Not all source formats implement something in this hook, and those that do usually use it to undo what --before-build has done.

--commit [directory] ...
    Record changes in the source tree unpacked in directory. This command can take supplementary parameters depending on the source format. It will error out for formats where this operation doesn't mean anything.

-h, --help
    Affiche un message d'aide puis quitte.

--version
    Affiche le numéro de version puis quitte.

OPTIONS DE CONSTRUCTION GÉNÉRIQUES

-cfichier/control
    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/changelog
    Indique le fichier d'enregistrement des changements 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-changelog
    Donne le format du fichier changelog. Par défaut, c'est une ligne spéciale, près de la fin du fichier, qui l'indique ; sinon, on utilise le format classique debian.

--format=valeur
    Utilise le format indiqué pour la construction du paquet source. 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.

-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 créés (archives et fichiers diffs). 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. gzip étant l'option par défaut. xz n'est géré que depuis dpkg-dev 1.15.5.

-zniveau, --compression-level=niveau
    Compression level to use. As with -Z it only affects newly created files. Supported values are: 1 to 9, best, and fast. The default is 9 for gzip and bzip2, 6 for xz and lzma.

-i[expr. rat.], --diff-ignore[=expr. rat.]
    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 ». 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. L'option -i active cette fonction avec une expression rationnelle qui couvre les fichiers de contrôle des plus usuels systèmes de gestion de version, les fichiers de sauvegardes, les fichiers d'échange et les répertoires utilisés par Libtool. Il ne peut y avoir qu'une seule expression rationnelle active ; 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 révision 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=expr.rat.
    The perl regular expression specified will extend the default value of --diff-ignore and its current value (if set). It does this by concatenating "|regexp" to the existing value. This option is convenient to use in debian/source/options to exclude some auto-generated files from the automatic patch generation.

-I[motif-fichier], --tar-ignore[=motif-fichier]
    Avec cette option, le fichier est passé à l'option tar(1) quand on veut créer un fichier .orig.tar.gz ou .tar.gz. 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 plusieurs fichiers. -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 : même si elles ont des rôles similaires, -i et -I ont une syntaxe et une sémantique très différentes. -i ne peut être spécifié qu'une fois et reçoit une expression rationnelle compatible avec le langage Perl qui est appliquée sur chaque chemin relatif complet de chaque fichier. I peut être spécifié plusieurs fois et prend un motif de nom de fichier avec les méta-caractères du shell. Le motif est appliqué au chemin relatif complet mais aussi à chaque partie du chemin individuellement. La sémantique exacte de l'option « tar --exclude » est un peu compliquée, voir http://www.gnu.org/software/tar/manuel/tar.html#wildcards pour une documentation plus complète. L'expression rationnelle et le motif par défaut pour les deux options peuvent être trouvés dans la sortie de la commande --help.

LES OPTIONS GENERIQUES POUR EXTRACTION

--no-copy
    Ne pas copier l'archive d'origine près de l'extraction du paquet source.

--no-check
    Ne vérifie pas les signatures et les sommes de contrôle avant de dépaqueter.

--require-valid-signature
    Refuse de décompresser le paquet source s'il ne contient pas de signature OpenPGP pouvant être vérifiée soit avec le fichier de clés trustedkeys.gpg de l'utilisateur, un des fichiers de clés propre à un distributeur ou un des fichiers de clés officiels de Debian (/usr/share/keyrings/debian-keyring.gpg et /usr/share/keyrings/debian-maintainers.gpg).

FORMATS DE PAQUET SOURCE
Si vous ne savez pas quel format source utiliser, il est conseillé de choisir soit « 3.0 (quilt)" soit "3.0 (native)". Voir http://wiki.debian.org/Projects/DebSrc3.0 pour plus d'informations sur la mise en oeuvre de ces formats dans 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"). Extracting Extraire un paquet natif revient à une simple extraction de l'archive TAR dans le répertoire cible. L'extraction d'un paquet non-natif consiste au dépaquetage du .orig.tar.gz puis l'application des correctifs contenues dans le .diff.gz. La date de tous les fichiers correctifs est celle du moment où a eu lieu l'extraction depuis le paquet source (cela évite les heures fausses menant à des problèmes lorsque des fichiers générés automatiquement sont modifiés). Le diff peut créer de nouveaux fichiers (tout le répertoire debian est créé de cette façon) mais ne peut pas supprimer de fichiers (les fichiers vides seront laissé là). 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 répertoire ".orig".

Options de construction (avec -b):

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 » concernant sa « debianisation ». S'il n'y a pas de second argument, et selon les autres arguments donnés, dpkg-source cherche le fichier « tar » des sources d'origine paquet_version-d'origine.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 Quand on spécifie en fichier source d'origine un fichier « tar » ; par défaut, paquet_version-d'origine.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-d'origine.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, une mauvaise archive source en résulte.

-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 une 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 dépaqueté 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. Cette option n'est pas autorisée dans debian/source/options mais peut être utilisée dans debian/source/local-options.

options d'extractions (avec -x):

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. (Ceci 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.

  Format: 2.0
Aussi connu sous le nom de « wig&pen ». Ce format n'est pas recommandé afin d'assurer une utilisation massive du format "3.0 (quilt)" qui 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 valides : ils sont appliqués au moment de l'extraction. Lors de la construction d'un nouveau paquet source, toute modification apportée à la source amont est enregistré dans un correctif nommé zz_debian-diff-auto.

  Format: 3.0 (native)
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 VCS ainsi que de nombreux fichiers temporaires (voir la valeur par défaut associé à l'option -I dans la sortie de --help).

  Format: 3.0 (quilt)
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 et de tirets (« - »).

Extracting

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 par dessus le 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 il peut également contenir des fichiers binaires en dehors de ce répertoire (voir l'option --include-binaries).

Toutes les modifications figurant dans debian/patches/debian.series ou debian/patches/series sont alors appliquées. Si l'ancien fichier est utilisé et qu'il n'y a pas de plus récent (ou que c'est un lien symbolique), alors celui-ci est remplacé par un lien symbolique vers l'ancien. Cette disposition vise à simplifier l'utilisation de « quilt » pour gérer l'ensemble des patches. Notez toutefois que si dpkg-source analyse correctement une série de fichiers avec les options utilisées pour l'application du correctif (stockées sur chaque ligne après le nom du patch et d'un ou plusieurs espaces), il n'ignore pas cesoptions et s'attendra toujours que les correctifs puissent être appliqués avec l'option -p1 de patch. Il va donc émettre un avertissement lorsqu'il rencontre ces options, et la construction est susceptible d'échouer.

Contrary to quilt's default behaviour, patches are expected to apply without any fuzz. When that is not the case, you should refresh such patches with quilt, or dpkg-source will error out while trying to apply them.

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

All original tarballs found in the current directory are extracted in a temporary directory by following the same logic as for the unpack, the debian directory is copied over in the temporary directory, and all patches except the automatic patch (debian-changes-version or debian-changes, depending on --single-debian-patch) are applied. The temporary directory is compared to the source package directory. When the diff is non-empty, the build fails unless --single-debian-patch or --auto-commit has been used, in which case the diff is stored in the automatic patch. If the automatic patch is created/deleted, it's added/removed from the series file and from the quilt metadata. Tout changement dans un fichier binaire ne peut être indiqué dans le diff et va déboucher sur un échec à moins que le mainteneur décide délibérément d'inclure cette modification binaire dans l'archive tar Debian (en le listant dans debian/source/include-binaries). La construction pourra également échouer si des fichiers binaires sont trouvés dans le sous-répertoire debian sans être indiqué dans la liste blanche de 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 patch. Note: dpkg-source --before-build (and -b) 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.

Recording changes

--commit [directory] [patch-name] [patch-file]
    Generates a patch corresponding to the local changes that are not managed by the quilt patch system and integrates it in the patch system under the name patch-name. If the name is missing, it will be asked interactively. If patch-file is given, it is used as the patch corresponding to the local changes to integrate. Once integrated, an editor is launched so that you can edit the meta-information in the patch header. Passing patch-file is mainly useful after a build failure that pre-generated this file, and on this ground the given file is removed after integration. Note also that the changes contained in the patch file must already be applied on the tree and that the files modified by the patch must not have supplementary unrecorded changes.

Options de construction

--allow-version-of-quilt-db=version
    Autorise dpkg-source à construire le fichier si la version des méta-données de quilt est celle indiquée, même si dpkg-source n'en n'a pas connaissance. En fait, cela indique que la version indiquée des méta-données de quilt est compatible avec la version 2 que dpkg-source gère. La version des méta-données de quilt est conservée dans .pc/.version.

--include-removal
    Ne pas ignorer les fichiers supprimés et les inclure dans le fichier de modification généré automatiquement.

--include-timestamp
    Inclure la date dans le patch généré automatiquement.

--include-binaries
    Ajouter tous les binaires modifiés dans l'archive tar debian. Les ajouter aussi à debian/source/include-binaries : elles seront ajoutées par défaut dans les constructions correspondantes aussi cette option n'est donc plus nécessaire.

--no-preparation
    Ne pas essayer de préparer l'arbre de la construction en appliquant les correctifs qui ne lui sont apparemment pas appliqués.

--single-debian-patch
    Use debian/patches/debian-changes instead of debian/patches/debian-changes-version for the name of the automatic patch generated during build. This option is particularly useful when the package is maintained in a VCS and a patch set can't reliably be generated. Instead the current diff with upstream should be stored in a single patch. The option would be put in debian/source/local-options and would be accompanied by a debian/source/local-patch-header file explaining how the Debian changes can be best reviewed, for example in the VCS that is used.

--create-empty-orig
    Crée automatiquement une archive tar d'origine vide si elle est manquante et qu'il existe des archives tar d'origine additionnelles. Cette option peut être utilisée lorsque le paquet source est une collection de différentes sources amont et qu'il n'existe pas de logiciel « principal ».

--unapply-patches
    Unapply the patches in the --after-build hook. You usually don't need this option as dpkg-source will automatically unapply the patches if it did apply them during --before-build. This option is only allowed in debian/source/local-options so that all generated source packages have the same behavior by default.

--abort-on-upstream-changes
    Ce processus échouera si un correctif automatique a été créé. Elle 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
    The process doesn't fail if an automatic patch has been generated, instead it's immediately recorded in the quilt series.

Options d'extraction

--skip-debianization
    Passe l'étape d'extraction de l'archive tar debian par dessus les sources amont

--skip-patches
    Ne pas appliquer des correctifs à la fin de l'extraction.

  Format: 3.0 (custom)
This format is special. It doesn't represent a real source package format but can be used to create source packages with arbitrary files.

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)
Ce format est expérimental.

Un paquet source qui utilise ce format est constitué d'un ensemble d'un seul 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 ».

Extracting

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-soumis et à ne pas ignorer.

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 inclus 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 « 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)
Ce format est expérimental. Il crée une archive tar contenant le dépôt bzr correspondant.

Extracting

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-soumis et à ne pas ignorer.

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ées pour économiser de l'espace.

AVERTISSEMENTS ET ERREURS

  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

  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.

FORMATS DE 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'espaces avant ou après l'indication du format.

  debian/source/include-binaries
Ce fichier contient une liste de fichiers binaires (un par ligne) qui doivent être inclus dans l'archive tar debian. Les espaces placés avant ou après ces noms sont supprimés. Les lignes commençant par « # » sont des commentaires et sont ignorées, ainsi que les lignes vides.

  debian/source/options
Ce fichier contient la liste des options qui seront automatiquement ajoutées au jeu d'options de ligne de commande utilisées par dpkg-source -b 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 optionnels sont autorisés 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 : les options de format ne sont pas acceptées dans ce fichier. Vous devriez utiliser debian/source/format à la place.

  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
Free form text that is put on top of the automatic patch generated in formats "2.0" or "3.0 (quilt)". local-patch-header is not included in the generated source package while patch-header is.

  debian/patches/series
Ce fichier comporte la liste de toutes les corrections qui ont été appliquées (dans l'ordre indiqué) aux sources amont. Les espaces situés avant et après les noms sont ignorés. 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 correction (relatif au répertoire debian/patches/) qui se termine au premier espace ou à la fin de la ligne. Des options facultatives de quilt peuvent être placées jusqu'à la fin de la ligne ou jusqu'au premier caractère « # » précédé par un ou plusieurs espaces (qui indique un commentaire qui se poursuit jusqu'à la fin de la ligne).

BOGUES
Le moment où a lieu le remplacement d'un champ par rapport à certaines déterminations de champ affichées sur la sortie standard est plutôt embrouillé.

VOIR AUSSI
dpkg-deb(1), dpkg(1), dselect(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>.