uupdate(1) Mettre à jour un paquet source depuis une version amont

SYNOPSIS

uupdate [options] nouvelle_archive_amont [version]
uupdate [options] --find|-f
uupdate [options] --patch|-p fichier_rustine

DESCRIPTION

uupdate modifie une archive source Debian existante pour intégrer une mise à jour amont fournie par une rustine, ou une archive source complète. L'utilitaire doit être invoqué depuis le répertoire de plus haut niveau de l'ancien répertoire des sources, et si un nom relatif est donné pour la nouvelle archive ou rustine, la recherche démarrera par le répertoire d'exécution puis relativement au répertoire parent de l'arborescence des sources. (Par exemple, si le fichier changelog est /usr/local/src/toto/toto-1.1/debian/changelog, alors l'archive ou la rustine sera recherchée relativement à /usr/local/src/toto). Remarquez que l'archive ou la rustine ne peuvent pas se trouver dans l'arborescence des sources elle-même. Les détails complets sur ce que fait le code sont donnés plus bas.

Les types de fichier pris en charge pour le code source sont les archives .tar.gz, .tar.bz2, .tar.Z, .tgz, .tar, .tar.lzma, .tar.xz, .7z et .zip. Les archives de code source non compressées sont également gérées, il suffit dans ce cas de donner le nom du répertoire du code source. Les types de fichier pour les rustines sont les fichiers non compressés ou compressés avec gzip, bzip2, lzma, ou xz. Le type de fichier est identifié par le nom du fichier, qui doit donc utiliser un suffixe standard.

uupdate est en règle générale capable de déduire le numéro de version grâce au nom de l'archive source (si ce numéro de version ne contient que des chiffres et points). En cas d'échec, vous devez spécifier le numéro de version explicitement (sans le numéro de livraison Debian, qui sera toujours initialisé à « 1 », ou « 0ubuntu1 » sur les systèmes Ubuntu reconnus). Cela peut se faire avec les options --upstream-version ou -v ou, dans le cas d'une archive, avec un numéro de version à la fin du nom de fichier. (La raison d'être de cette deuxième méthode est que uupdate peut alors être appelé directement depuis uscan.)

Comme uupdate utilise debuild pour nettoyer l'archive actuelle avant d'essayer d'appliquer une rustine, il accepte les options --rootcmd ou -r pour spécifier la commande à utiliser pour obtenir les droits du superutilisateur. Par défaut, fakeroot est utilisé.

Lorsqu'une archive est créée, les sources amont vierges doivent être utilisées pour créer le fichier .orig.tar.gz autant que possible. Cela signifie qu'une somme MD5 ou tout autre moyen peut être utilisé pour facilement comparer les sources amont et la copie Debian de la version amont. C'est le comportement par défaut, qui peut être désactivé en utilisant l'option --no-pristine décrite ci-dessous.

OPTIONS

Voici un résumé de ce qui est expliqué ci-dessus.
--no-conf, --noconf
Ne lire aucun fichier de configuration. L'option ne peut être utilisée qu'en première position de la ligne de commande.
--upstream-version version, -v version
Indique explicitement le numéro de version du paquet amont.
--force-bad-version, -b
Forcer un numéro de version à être moins élevé que le numéro de version actuel (comme c'est le cas par exemple dans le cas d'un rétroportage).
--rootcmd commande-pour-devenir-superutilisateur, -r commande-pour-devenir-superutilisateur
Indique la commande utilisée pour devenir superutilisateur pour la construction du paquet, et qui sera passée à debuild(1) si elle est fournie.
--pristine, -u
Traite les sources comme les sources amont vierges et crée un lien symbolique vers <paquet>_<version>.orig.tar.gz si possible. Cette option est sans importance pour les rustines. C'est le comportement par défaut.
--no-pristine
Ne cherche pas à créer de lien symbolique <paquet>_<version>.orig.tar.gz
--symlink, -s
Crée simplement un lien symbolique lors du déplacement de la nouvelle archive amont .tar.gz vers son nouvel emplacement <paquet>_<version>.orig.tar.gz. Il s'agit du comportement par défaut.
--no-symlink
Copy the upstream .tar.gz to the new location instead of making a symlink, if <package>_<version>.orig.tar.gz is missing. Otherwise, do nothing.
--find, -f
Find all upstream tarballs in ../ which match <pkg>_<version>.orig.tar.{gz|bz2|lzma|xz} or <pkg>_<version>.orig-<component>.tar.{gz|bz2|lzma|xz} ; --upstream-version required; pristine source required; not valid for --patch; This option uses dpkg-source as the backend to enable support for the multiple upstream tarballs and to resolve minor bugs reported previously. The use of this option is highly recommended.
--verbose
Donner une sortie bavarde.
--help, -h
Afficher un message d'aide et quitter avec succès.
--version
Afficher la version et le copyright, puis quitter avec succès.

VARIABLES DE CONFIGURATION

Les deux fichiers de configuration /etc/devscripts.conf et ~/.devscripts sont évalués dans cet ordre pour régler les variables de configuration. Des options de ligne de commande peuvent être utilisées pour écraser les paramètres des fichiers de configuration. Les variables d'environnement sont ignorées à cette fin. Les variables actuellement identifiées sont :
UUPDATE_PRISTINE
Si elle est définie à no, alors c'est comme si l'option --no-pristine était utilisée.
UUPDATE_SYMLINK_ORIG
Si elle est définie à no, alors c'est comme si l'option --no-symlink était utilisée.
UUPDATE_ROOTCMD
Équivaut à utiliser l'option --rootcmd.

ACTIONS EFFECTUÉES SUR UNE ARCHIVE

Récupération du numéro de version
À moins que le numéro de version ne soit explicitement fourni, le nom de l'archive est analysé pour rechercher une séquence de chiffres séparés par des points. Si quelque chose comme ça est trouvé, ce sera utilisé comme nouveau numéro de version amont. Sinon, le processus est interrompu.
Création de l'archive .orig.tar.gz
Si les options --pristine ou -u sont utilisées et que l'archive amont est une archive .tar.gz ou .tgz, alors elle est copiée directement dans <paquet>_<version>.orig.tar.gz.
Décompression
L'archive est décompressée et placée dans un répertoire avec le nom défini dans la Charte Debian : paquet-version_amont.orig. Le processus est interrompu si ce répertoire existe déjà.
Application de la rustine
La rustine (« patch ») .diff.gz de la version actuelle est appliquée à l'archive décompressée. Un message d'avertissement est affiché avant de quitter avec une valeur de retour non nulle si la rustine ne s'applique pas sans problème ou si elle n'a pas été trouvée. La liste des rustines rejetées est également affichée. Le fichier debian/rules est rendu exécutable et tous les fichiers .orig créés par patch sont détruits.
Mise à jour du fichier changelog
Une entrée du fichier changelog avec la nouvelle version est créée avec le texte « New upstream release » (nouvelle version amont).

Sur les systèmes Ubuntu, la détection dpkg-vendor est utilisée pour configurer le numéro de livraison Debian à « 0ubuntu1 ». Vous devriez ensuite modifier debian/changelog vous-même.

ACTIONS APPLIQUÉES À UN FICHIER DE RUSTINES

Récupération du numéro de version
À moins qu'un numéro de version ne soit explicitement fourni, le fichier de rustines est analysé afin de rechercher une séquence de chiffres séparés par des points. Si une telle séquence est trouvée, elle est utilisée comme nouveau numéro de version amont. Sinon, le processus est interrompu.
Nettoyage de l'arborescence source actuelle
La commande debuild clean est exécutée dans l'archive de l'architecture source Debian pour la nettoyer. Si une option -r est fournie à uupdate, elle est passée à debuild.
Application de la rustine
L'archive source actuelle (.orig.tar.gz) est décompressée et la rustine est appliquée aux sources originelles. En cas de succès, le répertoire .orig est renommé de façon à refléter le nouveau numéro de version, et le répertoire source Debian actuel est copié vers un répertoire avec le nouveau numéro de version. Sinon, le processus est interrompu. La rustine est appliquée à la nouvelle copie du répertoire source Debian. Le fichier debian/rules est rendu exécutable, et tous les fichiers .orig créés par patch sont détruits. En cas de problème lors de l'application de la rustine, un avertissement est affiché et le programme quittera avec une valeur de retour non nulle.
Mise à jour du fichier changelog
Une entrée du fichier changelog avec la nouvelle version est créée avec le texte « New upstream release » (nouvelle version amont).

Sur les systèmes Ubuntu, la détection dpkg-vendor est utilisée pour configurer le numéro de livraison Debian à « 0ubuntu1 ». Vous devriez ensuite modifier debian/changelog vous-même.

AUTEUR

La version initiale de uupdate a été écrite par Christoph Lameter <[email protected]>. Plusieurs modifications et améliorations ont été apportées par Julian Gilbey <[email protected]>.

TRADUCTION

Ce document est une traduction, maintenue à l'aide de l'outil po4a <https://po4a.alioth.debian.org/> par l'équipe de traduction francophone du projet Debian.

Nicolas François, Guillaume Delacour, Cyril Brulebois, Thomas Huriaux et David Prévot ont réalisé cette traduction.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. Veuillez signaler toute erreur de traduction en écrivant à <[email protected]> ou par un rapport de bogue sur le paquet devscripts.

La version anglaise la plus à jour de ce document est toujours consultable en ajoutant l'option « -L C » à la commande man.