Man page - uscan(1)
Packages contains this manual
- devscripts.conf(5)
- build-rdeps(1)
- whodepends(1)
- checkbashisms(1)
- annotate-output(1)
- namecheck(1)
- transition-check(1)
- debrsign(1)
- dpkg-genbuilddeps(1)
- deb-reversion(1)
- ltnu(1)
- debbisect(1)
- cowpoke(1)
- dscextract(1)
- list-unreleased(1)
- getbuildlog(1)
- debclean(1)
- chdist(1)
- rc-alert(1)
- mk-origtargz(1)
- deb2docker(1)
- edit-patch(1)
- what-patch(1)
- dd-list(1)
- tagpending(1)
- suspicious-source(1)
- bts(1)
- deb-why-removed(1)
- devscripts(7)
- plotchangelog(1)
- uscan(1)
- mergechanges(1)
- debsnap(1)
- debftbfs(1)
- hardening-check(1)
- dscverify(1)
- dget(1)
- who-uploads(1)
- debrepro(1)
- git-deborig(1)
- deb-janitor(1)
- deb2apptainer(1)
- dep-14-convert-git-branch-names(1)
- dep3changelog(1)
- wnpp-alert(1)
- pts-unsubscribe(1)
- sadt(1)
- debc(1)
- debdiff-apply(1)
- nmudiff(1)
- add-patch(1)
- dpkg-depcheck(1)
- rmadison(1)
- debsign(1)
- deb2singularity(1)
- diff2patches(1)
- debi(1)
- mk-build-deps(1)
- origtargz(1)
- debrebuild(1)
- deb-check-file-conflicts(1)
- reproducible-check(1)
- mass-bug(1)
- debootsnap(1)
- salsa(1)
- svnpath(1)
- debrelease(1)
- pts-subscribe(1)
- debdiff(1)
- dch(1)
- debcheckout(1)
- wrap-and-sort(1)
- wnpp-check(1)
- manpage-alert(1)
- dcmd(1)
- who-permits-upload(1)
- debchange(1)
- archpath(1)
- debuild(1)
- grep-excuses(1)
- debcommit(1)
- uupdate(1)
apt-get install devscripts
Available languages:
en fr deManual
USCAN.FR
NOMSYNOPSIS
DESCRIPTION
FORMAT DU FICHIER DE VEILLE
OPTIONS DE FICHIER DE VEILLE
EXEMPLE DâEXĂCUTION
EXEMPLES DE FICHIER DE VEILLE
Site HTTP (de base)
Site HTTP (pgpsigurlmangle)
Site HTTP (pgpmode = next/previous)
Site HTTP (flexible)
Site HTTP (MUT de base)
Site HTTP (recherche récursive de répertoire)
Site HTTP (raccourci alternatif)
Site HTTP (version exotique)
Site HTTP (DFSG)
Site HTTP (filenamemangle)
Site HTTP (downloadurlmangle)
Site HTTP (oversionmangle, MUT)
Site HTTP (pagemangle)
Site FTP (de base)Â :
Site FTP (expressions rationnelles)Â :
Site FTP (version exotique)
sf.net
github.com
PyPI
code.google.com
npmjs.org (modules Node)
paquet groupé
accÚs direct au dépÎt git (étiquettes)
accÚs direct au dépÎt git (HEAD)
accÚs direct au dépÎt git (avec sous-modules)
accÚs direct au dépÎt Subversion (étiquettes)
accÚs direct au dépÎt Subversion (HEAD)
Fossil
EXEMPLES DE FICHIER DE COPYRIGHT
EXEMPLES DE FICHIER DE TROUSSEAU
OPTIONS DE LIGNE DE COMMANDE
VARIABLES DE CONFIGURATION DE DEVSCRIPT
VALEURS DE RETOUR
FONCTIONNALITĂS AVANCĂES
Script personnalisé
DĂ©tournement dâURL
Vérification du nom du répertoire
HISTORIQUE ET MISE Ă NIVEAU
VOIR AUSSI
AUTEUR
TRADUCTION
NOM
uscan - Tester ou surveiller la disponibilitĂ© dâune nouvelle version amont
SYNOPSIS
uscan [ options ] [ chemin ]
DESCRIPTION
Pour une utilisation basique, uscan est exĂ©cutĂ© sans aucun paramĂštre Ă partir de la racine dâune arborescence source debianisĂ©e oĂč on voit le rĂ©pertoire debian/ ou un rĂ©pertoire contenant plusieurs arborescences sources.
Sauf si --watchfile est indiqué, uscan recherche récursivement les arborescences source valides en partant du répertoire courant (voir la section "Vérification du nom du répertoire" ci-dessous pour plus de détails).
Pour chaque arborescence valide trouvée, typiquement la séquence est la suivante :
|
âą |
uscan lit la premiÚre entrée dans debian/changelog pour déterminer le nom du paquet source <spkg> et la derniÚre version amont. |
||
|
âą |
uscan traite les lignes de veille debian/watch de haut en bas en une passe unique. |
âą
|
uscan tĂ©lĂ©charge une page web Ă partir de lâ URL spĂ©cifiĂ©e dans debian/watch . |
|||
|
âą |
uscan extrait les rĂ©fĂ©rences href pointant vers lâarchive amont (ou les archives) Ă partir de la page web en utilisant le motif_correspondant dans debian/watch . |
||
|
âą |
uscan tĂ©lĂ©charge lâarchive amont avec la version la plus haute plus rĂ©cente que la derniĂšre version amont. |
||
|
âą |
uscan sauvegarde lâarchive tĂ©lĂ©chargĂ©e dans le rĂ©pertoire parent ../ : ../<upkg>-<uversion>.tar.gz |
||
|
âą |
uscan invoque mk-origtargz pour crĂ©er lâarchive source : ../<spkg>_<oversion>.orig.tar.gz |
âą
|
Pour un paquet MUT ("multiple upstream tarball" - archive amont multiple), lâarchive amont secondaire sera plutĂŽt nommĂ©e ../<spkg>_<oversion>.orig-<composante>.tar.gz . |
|||
|
âą |
Lâaction est rĂ©pĂ©tĂ©e jusquâĂ ce que toutes les lignes de debian/watch soient traitĂ©es. |
||
|
âą |
uscan invoque uupdate pour crĂ©er lâarborescence source debianisĂ©e : ../<spkg>-<oversion>/*
Veuillez noter les informations suivantes.
|
âą |
Pour des raisons de simplicitĂ©, la mĂ©thode de compression utilisĂ©e dans les exemples est gzip avec le suffixe .gz . Les autres mĂ©thodes telles que xz , bzip2 et lzma , avec les suffixes xz , bz2 et lzma correspondants peuvent Ă©galement ĂȘtre utilisĂ©es. |
||
|
âą |
La nouvelle version=4 permet la gestion des paquets MUT, mais ce sont des cas rares parmi les paquets Debian. Pour un paquet dâarchive simple, il nây a quâune ligne de veille et pas de ../<spkg>_<oversion>.orig-<composante>.tar.gz . |
||
|
âą |
uscan avec lâoption --verbose produit un rapport lisible de son exĂ©cution. |
||
|
âą |
uscan avec lâoption --debug produit un rapport lisible de son exĂ©cution avec lâĂ©tat des variables internes. |
||
|
âą |
uscan avec lâoption --extra-debug produit un rapport lisible de son exĂ©cution avec lâĂ©tat des variables internes et le contenu distant lors de la phase "recherche". |
||
|
âą |
uscan avec lâoption --dehs produit un rapport dâĂ©tat du paquet amont au format XML pour que dâautres programmes tels que Debian External Health System. |
||
|
âą |
Lâobjectif premier dâ uscan est dâaider Ă dĂ©terminer si câest bien la derniĂšre version de lâarchive amont qui est utilisĂ©e et de tĂ©lĂ©charger cette version dâarchive. Lâordre des versions est dĂ©terminĂ©e par dpkg --compare-versions . |
||
|
âą |
Lâoption --safe dâ uscan limite ses fonctionnalitĂ©s Ă ses objectifs premiers. Ă la fois le repaquetage des fichiers tĂ©lĂ©chargĂ©s et la mise Ă jour de lâarborescence source sont sautĂ©s pour Ă©viter lâexĂ©cution de scripts non sĂ©curisĂ©s. Cela change aussi les options par dĂ©faut Ă --no-download et --skip-signature . |
FORMAT DU FICHIER DE VEILLE
Le format de la version 4 actuelle de debian/watch peut ĂȘtre rĂ©sumĂ© comme suit :
|
âą |
Les espaces et les tabulations de début sont supprimées. |
||
|
âą |
Les lignes vides sont supprimées. |
||
|
âą |
Une ligne qui débute par # (diÚse) est une ligne de commentaire et elle est supprimée. |
||
|
âą |
Un \ unique (barre inverse oblique) Ă la fin dâune ligne est supprimĂ© et la ligne suivante est concatĂ©nĂ©e aprĂšs la suppression des espaces et des tabulations de dĂ©but. La ligne concatĂ©nĂ©e est analysĂ©e comme une seule ligne. (Lâexistence ou lâinexistence dâune espace avant le \ unique final est signifiant.) |
||
|
âą |
La premiÚre ligne non commentée est la suivante : |
version=4
Il sâagit dâune ligne obligatoire et câest le numĂ©ro de la version recommandĂ©e.
Si vous utilisez ici " version=3 " à la place, certaines fonctionnalités peuvent ne pas fonctionner comme cela est documenté ici. Voir "HISTORIQUE ET MISE à NIVEAU".
|
âą |
Les lignes suivantes non commentĂ©es (lignes de veille) prĂ©cisent les rĂšgles de sĂ©lection des URL dâarchive amont candidates et sont dans un des trois formats suivants : |
âą
|
opts=" ... " http:// URL motif_correspondant [ version [ script ]] |
||||
|
âą |
http:// URL motif_correspondant [ version [ script ]] |
|||
|
âą |
opts=" ... " |
Ici,
|
âą |
opts=" ... " prĂ©cise le comportement dâ uscan . Voir "OPTIONS DE FICHIER DE VEILLE". |
||
|
âą |
http:// URL prĂ©cise la page web oĂč lâamont publie le lien vers la derniĂšre archive source. |
âą
|
https:// URL peut ĂȘtre aussi utilisĂ©, comme peut lâĂȘtre |
|||
|
âą |
ftp:// URL |
||
|
âą |
Certaines parties dâ URL peuvent ĂȘtre dans le motif de correspondance dâexpression rationnelle entourĂ©es par ( et ) comme /toto/titi-([\.\d]+)/ . Si plusieurs rĂ©pertoires correspondent, la version la plus Ă©levĂ©e est choisie.) Autrement, lâ URL est prise textuellement. |
||
|
âą |
motif_correspondant précise le motif de chaßne complet correspondant aux références hrefs dans la page web. Voir "EXEMPLES DE FICHIER DE VEILLE".
|
âą |
Toutes les parties correspondantes entre ( et ) sont concaténées avec un . (point) pour former la version amont. |
||
|
âą |
Si les rĂ©fĂ©rences href ne contiennent pas de rĂ©pertoires, il est possible de les combiner avec lâentrĂ©e prĂ©cĂ©dente. Câest-Ă -dire, http:// URL / motif_correspondant . |
||
|
âą |
version restreint le choix dâarchive amont pouvant ĂȘtre tĂ©lĂ©chargĂ©e. La version la plus rĂ©cente disponible est choisie dans tous les cas.
|
âą |
debian rĂ©clame que lâarchive amont Ă tĂ©lĂ©charger soit plus rĂ©cente que la version obtenue Ă partir de debian/changelog . |
||
|
âą |
Un numĂ©ro_de_version tel que 12.5 requiert que lâarchive amont soit plus rĂ©cente que le numĂ©ro_de_version . |
||
|
âą |
same requiert que la version tĂ©lĂ©chargĂ©e des archives secondaires soit exactement la mĂȘme que celle de la premiĂšre archive amont tĂ©lĂ©chargĂ©e. (Utile uniquement pour les paquets MUT) |
||
|
âą |
previous limite la version du fichier de signature. (Utilisé avec pgpmode=previous) |
||
|
âą |
ignore ne limite pas la version des archives secondaires. (Peut-ĂȘtre utile pour les paquets MUT) |
||
|
âą |
group rĂ©clame que lâarchive amont Ă tĂ©lĂ©charger soit plus rĂ©cente que la version obtenue Ă partir de debian/changelog . La version du paquet est la concatĂ©nation de toutes les versions amont. |
||
|
âą |
checksum exige que lâarchive amont Ă tĂ©lĂ©charger soit plus rĂ©cente que la version obtenue Ă partir de debian/changelog . La version du paquet est la concatĂ©nation de la version de la prinicpale source, suivie de la somme de contrĂŽle de toutes les versions amont utilisant le systĂšme de version "checksum". Ă minima, la source principale doit ĂȘtre dĂ©clarĂ©e comme "group". |
||
|
âą |
script est exĂ©cutĂ© Ă la fin de lâexĂ©cution dâ uscan avec les paramĂštres appropriĂ©s fournis par uscan (dĂ©faut: pas dâaction) .
|
âą |
Le paquet Debian typique est un paquet non natif fait Ă partir dâune archive amont. Seulement une ligne unique du fichier de veille dans un des deux premiers formats est habituellement utilisĂ©e avec sa version rĂ©glĂ©e Ă debian et script rĂ©glĂ© Ă uupdate . |
||
|
âą |
Un paquet natif ne devrait pas spécifier de script . |
||
|
âą |
Un paquet MUT ("multiple upstream tarball" â archive amont multiple) devrait indiquer uupdate comme script dans la derniĂšre ligne de veille et ne devrait pas indiquer de script dans le reste des lignes de veille. |
||
|
âą |
Le dernier format des lignes de veille est utile pour configurer des paramĂštres permanents : user-agent , compression . Si ce format est utilisĂ©, ces paramĂštres doivent ĂȘtre suivis de la (ou des) lignes(s) de veille dĂ©finissant lâ URL .
|
âą |
[and] dans le format ci-dessus sont ici pour marquer les parties optionnelles et ne devraient pas ĂȘtre tapĂ©es. |
Il y a quelques
chaßnes spéciales qui sont remplacées
par
uscan
pour faciliter lâĂ©criture du
fichier de veille.
@PACKAGE@
Cette chaßne est remplacée par le nom de paquet source trouvé dans la premiÚre ligne du fichier debian/changelog .
@ANY_VERSION@
Cette chaĂźne est remplacĂ©e par lâexpression rationnelle de la version amont lĂ©gale (capture).
[-_]?[Vv]?(\d[\-+\.:\Ë\da-zA-Z]*)
@ARCHIVE_EXT@
Cette chaĂźne est remplacĂ©e par lâexpression rationnelle de lâextension habituelle de fichier dâarchive (sans capture).
(?i)(?:\.(?:tar\.xz|tar\.bz2|tar\.gz|tar\.zstd?|zip|tgz|tbz|txz))
@SIGNATURE_EXT@
Cette chaĂźne est remplacĂ©e par lâexpression rationnelle de lâextension habituelle de fichier de signature (sans capture).
(?i)(?:\.(?:tar\.xz|tar\.bz2|tar\.gz|tar\.zstd?|zip|tgz|tbz|txz))'(?:\.(?:asc|pgp|gpg|sig|sign))'
@DEB_EXT@
Cette chaĂźne est remplacĂ©e par lâexpression rationnelle de habituelle de Debian (sans capture).
[\+Ë](debian|dfsg|ds|deb)(\.)?(\d+)?$
Certaines extensions de fichiers ne sont volontairement pas incluses dans la liste prĂ©cĂ©dente pour Ă©viter des faux positifs. Il vous est encore possible de rajouter ces motifs dâextension de fichier manuellement.
OPTIONS DE FICHIER DE VEILLE
uscan lit les options de veille spĂ©cifiĂ©es dans opts=" ... " pour personnaliser son comportement. De multiples options option1 , option2 , option3 , ..., peuvent ĂȘtre configurĂ©es de cette maniĂšre : opts=" option1 , option2 , option3 , ... " . Les guillemets doubles sont nĂ©cessaires si les options contiennent des espaces.
Ă moins quâelles ne soient notĂ©es par ailleurs comme persistantes, la plupart des options ne sont valables que dans la ligne de veille qui les contient.
Les options de
veille disponibles sont :
component=
composante
Configurer le nom de lâarchive source secondaire comme <spkg>_<oversion>.orig-<composante>.tar.gz pour un paquet MUT.
ctype= component-type
Indique le type du composant (seuls "nodejs" et "perl" sont disponible actuellement) . Ceci aide uscan à trouver la version courante si la version du composant est ignorée.
Lorsque ctype=nodejs est utilisé, uscan recherche une version dans "package.json", lorsque ctype=perl est utilisé, uscan recherche une version dans "META.json". Si une version est trouvée, elle est utilisée comme version courante du composant, en ignorant la version trouvée dans la chaßne de version de Debian. Ceci permet une meilleure détection des changements lorsque ignore ou checksum sont utilisés dans la version Debian.
compression= méthode
Configurer la mĂ©thode de compression quand lâarchive est rempaquetĂ©e (persistant).
Les valeurs de mĂ©thode disponibles sont xz , gzip (alias gz ), bzip2 (alias bz2 ) lzma et default . La valeur par dĂ©faut est xz . Lorsque uscan est lancĂ© dans un rĂ©pertoire source Debian et que le format est "1.0" ou nâest pas dĂ©fini, la mĂ©thode par dĂ©faut devient gzip .
Veuillez noter que le rempaquetage des archives amont par mk-origtargz ne se produit que si une des conditions suivantes est satisfaite :
|
âą |
USCAN_REPACK est configuré dans la configuration de devscript. Voir "VARIABLES DE CONFIGURATION DE DEVSCRIPT". |
||
|
âą |
--repack est configuré en ligne de commande. Voir <OPTIONS DE LIGNE DE COMMANDE>. |
||
|
âą |
repack est configuré sur la ligne de veille de cette maniÚre : opts="repack, ... " . |
||
|
âą |
Lâarchive amont est de type zip , y compris jar , xpi , ... |
||
|
âą |
Lâarchive amont est de type zstdi (Zstandard). |
||
|
âą |
Les alinĂ©as Files-Excluded ou Files-Excluded- composante sont configurĂ©s dans debian/copyright pour que mk-origtargz invoquĂ© Ă partir dâ uscan supprime les fichiers de lâarchive amont et la rempaquette. Voir "EXEMPLES DE FICHIER DE COPYRIGHT" et mk-origtargz (1). |
repack
Forcer le rempaquetage de lâarchive amont avec la mĂ©thode de compression.
repacksuffix= suffixe
Ajouter un suffixe Ă la version du paquet Debian amont seulement lorsque lâarchive source est rempaquetĂ©e. Cette rĂšgle peut ĂȘtre utilisĂ©e seulement pour un unique paquet dâarchive amont.
mode= mode
Configurer le mode de tĂ©lĂ©chargement de lâarchive.
|
LWP |
Il sâagit du mode par dĂ©faut qui tĂ©lĂ©charge lâarchive spĂ©cifiĂ©e Ă partir de lâURL sur le web. La valeur interne mode est automatiquement mise Ă jour soit vers http soit vers ftp dâaprĂšs lâURL. |
||
|
git |
Ce mode accĂšde directement Ă lâarchive git amont avec la commande git et empaquette lâarborescence source avec lâĂ©tiquette spĂ©cifiĂ©e par motif_correspondant dans spkg-version .tar.xz . |
Si lâamont fournit lâarchive publiĂ©e au travers de son interface web, veuillez utiliser celle-ci plutĂŽt que ce mode. Ce mode est le dernier recours.
Dans le mode git, motif_correspondant spécifie le motif correspondant complet de la chaßne pour les étiquettes au lieu des références href. Si motif_correspondant est réglé à refs/tags/ étiquette-motif_correspondant , uscan télécharge le fichier source à partir de refs/tags/ étiquette-correspondante du dépÎt git. La version amont est extraite en concaténant les parties correspondantes de ( ... ) avec . . Voir "EXEMPLES DE FICHIER DE VEILLE".
Si motif_correspondant est rĂ©glĂ© Ă HEAD , uscan tĂ©lĂ©charge le fichier source Ă partir du HEAD du dĂ©pĂŽt git et la version pertinente est automatiquement gĂ©nĂ©rĂ©e avec la date et lâempreinte du HEAD du dĂ©pĂŽt git.
Si motif_correspondant est réglé à heads/ branche , uscan télécharge le fichier source à partir de la branche spécifiée du dépÎt git.
Le dĂ©pĂŽt local est créé temporairement soit comme un dĂ©pĂŽt git brut soit comme un dĂ©pĂŽt git clonĂ© si gitmodules est spĂ©cifiĂ©. Lâarchive est ensuite gĂ©nĂ©rĂ©e depuis le dĂ©pĂŽt temporaire et enregistrĂ©e dans le rĂ©pertoire de destination.
Le dĂ©pĂŽt temporaire est normalement effacĂ© aprĂšs lâexĂ©cution de uscan mais est conservĂ© si lâoption --debug est spĂ©cifiĂ©e.
Si le rĂ©pertoire courant est un dĂ©pĂŽt git et si le dĂ©pĂŽt recherchĂ© est listĂ© dans les sources amont ("remote") , alors uscan lâutilisera au lieu de dupliquer le dĂ©pĂŽt dans un rĂ©pertoire temporaire. Le seul changement dans le rĂ©pertoire local est une mise Ă jour ("fetch") .
|
svn |
Ce mode accĂšde directement Ă lâarchive Subversion amont avec la commande svn et empaquette lâarborescence source. |
Dans le mode svn, motif_correspondant spécifie le motif correspondant complet de la chaßne pour les répertoires su dépÎt Subversion. La version amont est extraite en concaténant les parties correspondantes de ( ... ) avec . .
Si motif_correspondant est rĂ©glĂ© Ă HEAD , uscan tĂ©lĂ©charge la derniĂšre arborescence source de lâURL. La version amont est ensuite construite en ajoutant la derniĂšre rĂ©vision de lâURL Ă 0.0Ësvn .
Comme la signature des commits nâest pas possible avec Subversion, pgpmode est mis dâoffice Ă none lorsque mode=svn . Les valeurs de pgpmode autres que default et none affichent des erreurs.
pretty= rĂšgle
Configurer la chaĂźne de version amont Ă un format arbitraire comme un argument optionnel de opts quand le motif_correspondant est HEAD ou heads/ branch pour le mode git . Pour connaĂźtre la syntaxe exacte, voir la page de manuel de git-log avec tformat . Le format par dĂ©faut est pretty=0.0Ëgit%cd.%h . Aucune rĂšgle uversionmangle nâest applicable dans ce cas.
Lorsque pretty=describe est utilisĂ©, la chaĂźne de version amont est la sortie de la commande " git describe --tags | sed s/-/./g ". Par exemple, si lâenvoi (commit) est le cinq uiĂšme aprĂšs la derniĂšre Ă©tiquette v2.17.12 et son empreinte courte est ged992511 , alors, la chaĂźne est v2.17.12.5.ged992511 . Dans ce cas, câest une bonne idĂ©e dâajouter uversionmangle=s/Ë/0.0Ë/ ou uversionmangle=s/Ëv// pour rendre la chaĂźne de la version amont compatible avec Debian. Veuillez noter quâafin que pretty=describe fonctionne bien, lâamont doit Ă©viter dâĂ©tiqueter avec des Ă©tiquettes alphabĂ©tiques alĂ©atoires.
Lâoption pretty=describe contraint Ă configurer gitmode=full pour crĂ©er automatiquement un clone local complet du dĂ©pĂŽt.
date= rĂšgle
Configurer la chaĂźne de date utilisĂ©e par lâoption pretty Ă un format arbitraire comme un paramĂštre optionnel de opts quand le motif_correspondant est HEAD ou heads/ branch pour le mode git . Pour connaĂźtre la syntaxe exacte, voir la page de manuel strftime . Le format par dĂ©faut est date=%Y%m%d .
gitexport= mode
Indiquer le mode dâopĂ©ration dâun export dâarchive git. La valeur par dĂ©faut est gitexport=default . Positionner Ă gitexport=all pour inclure tous les fichiers dans lâarchive .orig.tar, en ignorant tous les attributs git export-ignore dĂ©finis par le projet amont. Cette option sâapplique Ă©galement aux sous-modules si gitmodules est spĂ©cifiĂ©.
Cette option nâest valable quâen mode "git".
gitmode= mode
Configurer le mode de lâopĂ©ration git clone. La valeur par dĂ©faut est gitmode=shallow . Pour certains serveurs git simples ("dumb"), il peut ĂȘtre nĂ©cessaire de configurer soi-mĂȘme la valeur gitmode=full pour imposer une opĂ©ration de clonage complĂšte.
Si le rĂ©pertoire courant est un dĂ©pĂŽt git et si le dĂ©pĂŽt recherchĂ© est listĂ© dans les sources amont ("remote") , alors uscan lâutilisera au lieu de dupliquer le dĂ©pĂŽt dans un rĂ©pertoire temporaire.
gitmodules [= modules ]
Cloner un ou plusieurs sous-modules aprÚs avoir cloné le dépÎt principal. Par défaut, uscan clone tous les sous-modules liés au dépÎt git.
Pour cloner une sélection de sous-modules, utiliser une liste dont les éléments sont séparés par des points-virgules. Par exemple : gitmodules=m4;doc/common.
pgpmode= mode
Configurer le
mode
de
vérification de signature OpenPGP.
auto
uscan vĂ©rifie les URL possibles pour le fichier de signature et gĂ©nĂšre automatiquement une rĂšgle pgpsigurlmangle pour lâutiliser.
default
Utiliser pgpsigurlmangle= rĂšgles pour crĂ©er la chaĂźne dâURL du fichier de signature amont candidat Ă partir de lâURL de lâarchive amont. (Par dĂ©faut)
Si le pgpsigurlmangle spĂ©cifiĂ© est manquant, uscan vĂ©rifie les URL possible pour le fichier de signature et suggĂšre lâajout dâune rĂšgle pgpsigurlmangle .
mangle
Utiliser pgpsigurlmangle= rĂšgles pour crĂ©er la chaĂźne dâURL du fichier de signature amont candidat Ă partir de lâURL de lâarchive amont.
next
VĂ©rifier ce fichier dâarchive tĂ©lĂ©chargĂ© avec le fichier de signature spĂ©cifiĂ© dans la ligne de veille suivante. La ligne de veille suivante doit ĂȘtre pgpmode=previous . Autrement, aucune vĂ©rification nâest effectuĂ©e.
previous
VĂ©rifier le fichier dâarchive tĂ©lĂ©chargĂ© spĂ©cifiĂ© dans la ligne de veille prĂ©cĂ©dente avec ce fichier de signature. La ligne de veille prĂ©cĂ©dente doit ĂȘtre pgpmode=next .
self
Vérifier le fichier toto.ext téléchargé avec sa propre signature et extraire son fichier archive de contenu en toto .
gittag
Vérifie la signature du tag si mode=git .
none
Pas de signature disponible. (Pas dâalerte.)
searchmode= mode
Configurer le mode de
recherche.
html
(défaut))
: recherche
lâexpression dans les paramĂštres
"href"
des tags HTML <a>
plain
: recherche lâexpression dans la page
entiĂšre
Câest utile si le contenu de la page nâest pas au format HTML mais au format JSON. Exemple avec npmjs.com :
version=4
opts="searchmode=plain" \
https://registry.npmjs.org/aes-js \
https://registry.npmjs.org/aes-js/-/aes-js-(\d[\d\.]*)@ARCHIVE_EXT@
decompress
DĂ©compresser lâarchive compressĂ©e avant la vĂ©rification de la signature OpenPGP.
bare
DĂ©sactiver tout le code spĂ©cifique au site de cas particuliers tels que les utilisations de redirecteur dâURL et les altĂ©rations de contenu de page. (Persistant)
user-agent= chaĂźne_user-agent
Configurer la chaßne user-agent utilisée pour contacter le serveur HTTP(S) comme chaßne_user-agent . (Persistant)
Lâoption user-agent devrait ĂȘtre prĂ©cisĂ©e par elle-mĂȘme dans la ligne de veille sans URL , pour permettre lâutilisation de point-virgules et de virgules.
pasv , passive
Utiliser le mode passif ("PASV") pour les connexions FTP.
Si le mode PASV (passif) est requis Ă cause de lâenvironnement rĂ©seau cĂŽtĂ© client, configurer uscan pour quâil utilise le mode PASV avec les "OPTIONS DE LIGNE DE COMMANDE" ou plutĂŽt avec les "VARIABLES DE CONFIGURATION DE DEVSCRIPT".
active , nopasv
Ne pas utiliser le mode PASV (passif) pour les connexions FTP.
unzipopt [ options ]
Ajouter les options supplĂ©mentaires Ă utiliser avec la commande unzip telles que -a , -aa et -b lors de lâexĂ©cution par mk-origtargz .
dversionmangle= rĂšgles
Normaliser la derniĂšre chaĂźne de version amont trouvĂ©e dans debian/changelog pour la comparer avec la version de lâarchive amont disponible. Le retrait de suffixes spĂ©cifiques Ă Debian tels que s/\+dfsg\d*$// est habituellement rĂ©alisĂ© Ă ce moment lĂ .
Il est Ă©galement possible dâutiliser dversionmangle=auto , ce qui est exactement la mĂȘme chose que dversionmangle=s/@DEB_EXT@//
dirversionmangle= rĂšgles
Normaliser la chaĂźne du chemin du rĂ©pertoire correspondant Ă lâexpression rationnelle dans un jeu de parenthĂšses de lâadresse http:// URL comme chaĂźne dâindex pour trier par version. Ce nâest utilisĂ© que pour trier les chemins de rĂ©pertoire.
Une substitution telle que s/PRE/Ëpre/; s/RC/Ërc/ peut aider.
pagemangle= rĂšgles
Normaliser la chaĂźne de page web tĂ©lĂ©chargĂ©e. (Ă nâutiliser quâen cas de nĂ©cessitĂ© absolue. En gĂ©nĂ©ral, lâĂ©tiquette g est requise pour ces rĂšgles .)
Cela est pratique si vous souhaitez accĂ©der Ă Amazon AWS ou Ă des dĂ©pĂŽts Subversion dans lesquels <a href="..."> nâest pas utilisĂ©.
uversionmangle= rĂšgles
Normaliser les chaĂźnes de version amont candidate extraites des rĂ©fĂ©rences href dans le code source de la page web. Cela est utilisĂ© comme lâindex de tri de version lors de la sĂ©lection de la derniĂšre version amont.
Une substitution telle que s/PRE/Ëpre/; s/RC/Ërc/ peut aider.
versionmangle= rĂšgles
Il sâagit dâun raccourci syntaxique pour uversionmangle= rĂšgles , dversionmangle = rĂšgles
hrefdecode=percent-encoding
Convertir la chaĂźne des rĂ©fĂ©rences href de lâarchive amont sĂ©lectionnĂ©e de la chaĂźne hexadĂ©cimale encodĂ©e en pourcent vers la chaĂźne dĂ©codĂ©e de lâURL normale pour les sites web embrouillĂ©s. Seul percent-encoding est disponible et est dĂ©codĂ© avec lâinstruction s/%([A-Fa-f\d]{2})/chr hex $1/eg .
downloadurlmangle= rĂšgles
Convertir la chaĂźne des rĂ©fĂ©rences href de lâarchive amont sĂ©lectionnĂ©e dans lâURL accessible des sites web embrouillĂ©s. LâexĂ©cution intervient aprĂšs hrefdecode .
filenamemangle= rĂšgles
GĂ©nĂ©rer le nom de fichier de lâarchive amont Ă partir de la chaĂźne des rĂ©fĂ©rences href sĂ©lectionnĂ©e si motif_correspondant peut extraire lâ <uversion> de la derniĂšre version amont Ă partir de la chaĂźne des rĂ©fĂ©rences href sĂ©lectionnĂ©e. Autrement, gĂ©nĂ©rer le nom de fichier de lâarchive amont Ă partir de la chaĂźne de lâURL complĂšte et configurer lâ <uversion> manquant Ă partir du nom de fichier de lâarchive amont gĂ©nĂ©rĂ©.
Sans cette option, le nom de fichier de lâarchive amont par dĂ©faut est gĂ©nĂ©rĂ© en prenant la derniĂšre composante de lâURL et en retirant tout ce qui est aprĂšs un "?" ou un "#".
pgpsigurlmangle= rĂšgles
GĂ©nĂ©rer la chaĂźne dâURL du fichier de signature amont candidat Ă partir de lâURL de lâarchive amont.
oversionmangle= rĂšgles
GĂ©nĂ©rer la chaĂźne de version <oversion> de lâarchive source <spkg><spkg>_<oversion>.orig.tar.gz Ă partir de <uversion> . Cela devrait ĂȘtre utilisĂ© pour ajouter un suffixe tel que +dfsg Ă un paquet MUT.
Ici, les rĂšgles de manipulation appliquent les rĂšgles Ă la chaĂźne pertinente. De multiples rĂšgles peuvent ĂȘtre prĂ©cisĂ©es dans une chaĂźne de rĂšgle de manipulation en crĂ©ant une chaĂźne concatĂ©nĂ©e de chaque rĂšgle de manipulation sĂ©parĂ©e par des ; (point-virgule).
Les rĂšgles de manipulation ne peuvent pas comporter de ; (point-virgule), , (virgule) ni de " (guillemet double).
Chaque rĂšgle de manipulation se comporte comme si une commande Perl " $string =Ë rĂšgle " Ă©tait exĂ©cutĂ©e. Il y a quelques particularitĂ©s notables.
|
âą |
Une rÚgle peut seulement utiliser les opérations s , tr et y . |
s/ expression_rationnelle / remplacement / options
Rechercher la correspondance du motif dâexpression rationnelle et remplacer la chaĂźne cible. Les Ă©tiquettes g , i et x sont les seules disponibles. Utiliser la syntaxe $1 pour des rĂ©fĂ©rences arriĂšres (pas de syntaxe \1 ). LâexĂ©cution de code nâest pas permise (câest-Ă -dire pas de constructions (?{}) ou (??{}) ).
y/ source / dest / ou tr/ source / dest /
Translittérer les caractÚres de la chaßne cible.
EXEMPLE DâEXĂCUTION
uscan lit la premiÚre entrée dans debian/changelog pour déterminer le nom du paquet source et la derniÚre version amont.
Par exemple, si la premiÚre entrée de debian/changelog est :
|
âą |
titi ( 3:2.03+dfsg-4 ) unstable; urgency=low |
alors, le nom du paquet source est titi et la version la plus récente du paquet Debian est 3:2.03+dfsg-4 .
La derniĂšre version amont est normalisĂ©e Ă 2.03+dfsg en retirant lâepoch et la rĂ©vision Debian.
Si la rĂšgle dversionmangle existe, la derniĂšre version amont est normalisĂ©e plus profondĂ©ment en lui appliquant cette rĂšgle. Par exemple, si la derniĂšre version amont est 2.03+dfsg indiquant que lâarchive source a Ă©tĂ© rempaquetĂ©e, le suffixe +dfsg est retirĂ© par la substitution de chaĂźne s/\+dfsg\d*$// pour produire la derniĂšre version amont 2.03 (traitĂ©e avec dversionmangle) et est comparĂ©e aux versions dâarchive amont candidates comme 2.03 , 2.04 , ..., qui se trouvent sur le site distant. Donc, configurer la rĂšgle ainsi :
|
âą |
opts="dversionmangle=s/\+dfsg\d*$//" |
uscan tĂ©lĂ©charge une page web Ă partir de lâadresse http:// URL spĂ©cifiĂ©e dans debian/watch .
|
âą |
Si la partie nom du rĂ©pertoire de lâ URL nâa pas de parenthĂšse, ( et ) , il est pris tel quel. |
||
|
âą |
Si la partie nom du rĂ©pertoire de lâ URL a des parenthĂšses ( et ) , alors uscan cherche de façon rĂ©cursive tous les rĂ©pertoires possibles pour trouver une page avec la nouvelle version. Si la rĂšgle dirversionmangle existe, lâindex de tri gĂ©nĂ©rĂ© est utilisĂ© pour trouver la version la plus rĂ©cente. Si une version particuliĂšre est spĂ©cifiĂ©e pour le tĂ©lĂ©chargement, la chaĂźne de version correspondante a la prioritĂ© sur la version la plus rĂ©cente. |
Par exemple, cette adresse http:// URL peut ĂȘtre spĂ©cifiĂ©e ainsi :
|
âą |
http://www.example.org/@ANY_VERSION@/ |
Veuillez noter le / final dans lâadresse ci-dessus pour faire de @ANY_VERSION@ le rĂ©pertoire.
Si la rĂšgle pagemangle existe, la totalitĂ© de la page web tĂ©lĂ©chargĂ©e, considĂ©rĂ©e comme une chaĂźne, est normalisĂ©e en y appliquant la rĂšgle. Câest un outil trĂšs puissant qui doit ĂȘtre utilisĂ© avec prudence. Si dâautres rĂšgles de manipulation peuvent ĂȘtre utilisĂ©es pour rĂ©pondre Ă vos objectifs, nâutilisez pas cette rĂšgle.
Des rĂ©fĂ©rences href, dĂ©finies dans lâĂ©tiquette <a href=" ... "> , sont recherchĂ©es dans la page web tĂ©lĂ©chargĂ©e pour localiser les rĂ©fĂ©rences de lâarchive amont candidate. Ces rĂ©fĂ©rences de lâarchive amont candidate sont sĂ©lectionnĂ©es par le motif dâexpression rationnelle Perl motif-correspondant , tel que DL-(?:[\d\.]+?)/toto-(.+)\.tar\.gz pour rĂ©duire le nombre de candidates. Ce motif de sĂ©lection doit ĂȘtre bornĂ© au dĂ©but et Ă la fin. Par exemple, les rĂ©fĂ©rences candidates peuvent ĂȘtre :
|
âą |
DL-2.02/toto-2.02.tar.gz |
|||
|
âą |
DL-2.03/toto-2.03.tar.gz |
|||
|
âą |
DL-2.04/toto-2.04.tar.gz |
Ici, la chaĂźne de sĂ©lection (.+) dans motif-correspondant est considĂ©rĂ©e comme la version amont candidate. Sâil y a plusieurs chaĂźnes correspondantes de motifs de capture dans motif-correspondant , elles sont toutes concatĂ©nĂ©es avec un point ( . ) pour former la version amont candidate. Il convient de sâassurer dâutiliser des expressions rationnelles non capturantes telles que (?:[\d\.]+?) Ă la place pour la partie correspondant Ă du texte variable sans rapport avec la version.
Les versions amont candidates sont alors :
|
âą |
2.02 |
|||
|
âą |
2.03 |
|||
|
âą |
2.04 |
Le nom de fichier de lâarchive tĂ©lĂ©chargĂ©e est simplement fixĂ© comme le nom de fichier dans lâURL distante de la rĂ©fĂ©rence href sĂ©lectionnĂ©e.
Si la rĂšgle <uversionmangle> existe, les versions amont candidates sont normalisĂ©es en leur appliquant cette rĂšgle. (Cette rĂšgle peut ĂȘtre utilisĂ©e si le schĂ©ma de la version amont ne permet pas un tri qui identifie correctement la version la plus rĂ©cente.)
La rĂ©fĂ©rence href de lâarchive amont correspondant Ă la version amont candidate la plus rĂ©cente (traitĂ©e par uversionmangle), plus rĂ©cente que la derniĂšre version amont (traitĂ©e par dversionmangle) est sĂ©lectionnĂ©e.
Si plusieurs rĂ©fĂ©rences href dâarchive amont correspondant Ă une version unique existent avec diffĂ©rentes extensions, câest la plus forte compression qui est choisie. (Ordre de priorité : tar.xz > tar.lzma > tar.bz2 > tar.gz .)
Si la rĂ©fĂ©rence href de lâarchive amont sĂ©lectionnĂ©e est une URL relative, elle est convertie en URL absolue avec lâURL de base de la page web. Si lâĂ©tiquette <base href=" ... "> existe sur la page web, la rĂ©fĂ©rence href de lâarchive amont est convertie en URL absolue en utilisant plutĂŽt lâURL de base spĂ©cifiĂ©e dans lâĂ©tiquette de base.
Si la rĂšgle downloadurlmangle existe, la rĂ©fĂ©rence href de lâarchive amont sĂ©lectionnĂ©e est normalisĂ©e en lui appliquant cette rĂšgle. (Cela est utile sur certains sites avec des URL de tĂ©lĂ©chargement embrouillĂ©es.)
Si la rĂšgle filenamemangle existe, le nom de fichier dâarchive tĂ©lĂ©chargĂ© est gĂ©nĂ©rĂ© en appliquant cette rĂšgle Ă la rĂ©fĂ©rence href sĂ©lectionnĂ©e si le motif-correspondant peut extraire la derniĂšre version amont <uversion> Ă partir de la chaĂźne de la rĂ©fĂ©rence href sĂ©lectionnĂ©e. Autrement, le nom de fichier dâarchive amont est gĂ©nĂ©rĂ© Ă partir de sa chaĂźne dâURL complĂšte et rĂšgle le <uversion> manquant Ă partir du nom de fichier dâarchive amont gĂ©nĂ©rĂ©.
En absence de rĂšgle filenamemangle , le nom de fichier dâarchive amont par dĂ©faut est gĂ©nĂ©rĂ© en prenant la derniĂšre composante de lâURL et en retirant tout ce quâil y a aprĂšs un "?" ou un "#".
uscan tĂ©lĂ©charge lâarchive amont sĂ©lectionnĂ©e dans le rĂ©pertoire parent ../ . Par exemple, le fichier tĂ©lĂ©chargĂ© peut ĂȘtre :
|
âą |
../toto-2.04.tar.gz |
De façon gĂ©nĂ©rique, nous appellerons par la suite cette version 2.04 tĂ©lĂ©chargĂ©e dans lâexemple ci-dessus sous le nom de <uversion> .
Si la rĂšgle pgpsigurlmangle existe, lâURL du fichier de signature amont est gĂ©nĂ©rĂ©e en appliquant cette rĂšgle Ă la rĂ©fĂ©rence href de lâarchive amont sĂ©lectionnĂ©e (traitĂ©e par downloadurlmangle) et on tente de tĂ©lĂ©charger le fichier de signature Ă partir de cette URL.
Si la rĂšgle pgpsigurlmangle nâexiste pas, uscan prĂ©vient lâutilisateur si le fichier de signature amont correspondant est disponible Ă partir de la mĂȘme URL, en ajoutant Ă son nom de fichier les cinq suffixes courants asc , sig , sign , pgp et gpg . (On peut Ă©viter cet avertissement avec le rĂ©glage pgpmode=none .)
Si le fichier de signature est tĂ©lĂ©chargĂ©, lâauthenticitĂ© de lâarchive amont tĂ©lĂ©chargĂ©e est vĂ©rifiĂ©e par rapport au fichier de signature tĂ©lĂ©chargĂ© en utilisant le trousseau blindĂ© debian/upstream/signing-key.asc . (Voir "EXEMPLES DE FICHIER DE TROUSSEAU"). Si la signature nâest pas valable, ou si la clef ne fait pas partie du trousseau, uscan signalera une erreur.
Si la rĂšgle oversionmangle existe, la version dâarchive source oversion est gĂ©nĂ©rĂ©e Ă partir de la version amont tĂ©lĂ©chargĂ©e uversion en appliquant cette rĂšgle. Elle est utile pour ajouter un suffixe tel que +dfsg Ă la version de tous les paquets source du paquet MUT pour lequel le mĂ©canisme de suffixe de rempaquetage ne fonctionne pas.
uscan
invoque
mk-origtargz
pour créer
lâarchive source nommĂ©e correctement pour le
paquet source avec
.orig.
(ou
.orig-<component>.
pour les archives
secondaires) dans son nom de fichier.
cas AÂ : empaquetage de lâarchive amont telle
quelle
mk-origtargz crĂ©e un lien symbolique ../titi_<oversion>.orig.tar.gz avec lâarchive locale amont tĂ©lĂ©chargĂ©e. Ici, << titi >> est le nom du paquet source trouvĂ© dans debian/changelog . Le lien symbolique gĂ©nĂ©rĂ© peut ĂȘtre :
|
âą |
../titi_2.04.orig.tar.gz -> toto-2.04.tar.gz (tel quel) |
Habituellement, il nây a pas besoin de paramĂ©trer opts="dversionmangle= ... " dans ce cas.
cas BÂ : empaquetage de
lâarchive amont aprĂšs le retrait des fichiers
non-DFSG
mk-origtargz vĂ©rifie le motif gĂ©nĂ©rique ("glob") des noms de fichiers du paragraphe Files-Excluded dans la premiĂšre section de debian/copyright , retire les fichiers correspondants pour crĂ©er une archive amont rempaquetĂ©e. Normalement, lâarchive amont rempaquetĂ©e est renommĂ©e en ../bar_<oversion><suffixe>.orig.tar.gz avec suffixe , utilisant lâoption repacksuffix pour le seul paquet amont. Ici, <oversion> est mis Ă jour en <oversion><suffixe> .
Le retrait des fichiers est requis si les fichiers ne sont pas compatibles avec DFSG. Dans ce cas, +dfsg est utilisé comme suffixe .
Alors, les options sont plutÎt ainsi combinées opts="dversionmangle=s/\+dfsg\d*$// , repacksuffix=+dfsg" .
Par exemple, lâarchive amont rempaquetĂ©e peut ĂȘtre :
|
âą |
../titi_2.04+dfsg.orig.tar.gz (rempaqueté) |
uscan invoque normalement " uupdate --find --upstream-version oversion " pour le fichier de veille version=4.
Veuillez noter que lâoption --find est ici utilisĂ©e dans la mesure oĂč mk-origtargz a dĂ©jĂ Ă©tĂ© invoquĂ©e pour construire le fichier *.orig.tar.gz . uscan choisit bar Ă partir de debian/changelog .
Il crĂ©e la nouvelle arborescence source amont sous le rĂ©pertoire ../bar-<oversion> et lâadapte Ă Debian en exploitant le contenu du dernier paquet.
EXEMPLES DE FICHIER DE VEILLE
Lors de lâĂ©criture du fichier de veille, vous devriez vous servir de la derniĂšre page dâannonce web de la source amont. Vous ne devriez pas, si possible, essayer de deviner la structure de lâarchive amont. Voici des fichiers debian/watch typiques.
Veuillez noter que lâexĂ©cution de uscan avec -v ou -vv rĂ©vĂšle ce qui se passe prĂ©cisĂ©ment en interne.
Lâexistence ou lâabsence dâune espace avant le \ ("back slash") final est significatif.
Certaines chaßnes de configuration plus courtes non documentées sont utilisées dans les EXEMPLES ci-dessous pour faciliter votre saisie. Elles sont intentionnelles. uscan est écrit pour accepter de telles abréviations de bon sens, mais il ne faut pas exagérer.
Site HTTP (de base)
Voici un exemple dâarchive amont simple basique.
version=4
http://example.com/Ëuser/release/@PACKAGE@.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@
Ou sans utiliser
les chaßnes de substitution (non recommandé):
http://example.com/Ëuser/release/foo.html \
files/foo-([\d\.]+)\.tar\.gz
version=4
Pour le paquet source amont toto-2.0.tar.gz , ce fichier de veille télécharge et crée le fichier orig.tar Debian toto_2.0.orig.tar.gz .
Site HTTP (pgpsigurlmangle)
Voici un exemple dâarchive amont simple de base avec le fichier de signature correspondant dans le mĂȘme chemin de fichier.
version=4
opts="pgpsigurlmangle=s%$%.asc%"
http://example.com/release/@PACKAGE@.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@
Pour le paquet source amont toto-2.0.tar.gz et le fichier de signature amont toto-2.0.tar.gz.asc , ce fichier de veille tĂ©lĂ©charge ces fichiers, vĂ©rifie lâauthenticitĂ© avec le trousseau debian/upstream/signing-key.asc et crĂ©e le fichier orig.tar Debian toto_2.0.orig.tar.gz .
Voici un autre exemple dâarchive amont simple de base avec le fichier de signature correspondant sur lâarchive dĂ©compressĂ©e dans le mĂȘme chemin de fichier.
version=4
opts="pgpsigurlmangle=s%@ARCHIVE_EXT@$%.asc%,decompress"
\
http://example.com/release/@PACKAGE@.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@
Pour le paquet source amont toto-2.0.tar.gz et le fichier de signature amont toto-2.0.tar.asc , ce fichier de veille tĂ©lĂ©charge ces fichiers, vĂ©rifie lâauthenticitĂ© avec le trousseau debian/upstream/signing-key.asc et crĂ©e le fichier orig.tar Debian toto_2.0.orig.tar.gz .
Site HTTP (pgpmode = next/previous)
Voici un exemple dâarchive amont simple basique avec le fichier de signature correspondant dans un chemin de fichier indĂ©pendant.
version=4
opts="pgpmode=next"
http://example.com/release/@PACKAGE@.html \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="pgpmode=previous"
http://example.com/release/@PACKAGE@.html \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@SIGNATURE_EXT@
previous
La partie (?:\d+) peut ĂȘtre une valeur alĂ©atoire. Le fichier dâarchive peut avoir la valeur 53 , alors que le fichier de signature peut avoir la valeur 33 .
La partie ([\d\.]+) pour le fichier de signature est soumise Ă lâexigence stricte de correspondre Ă cela pour lâarchive amont spĂ©cifiĂ©e dans la ligne prĂ©cĂ©dente en ayant previous comme version dans la ligne de veille.
Site HTTP (flexible)
Voici un exemple pour une extrĂȘme flexibilitĂ© des extensions de lâarchive amont et du fichier de signature.
version=4
opts="pgpmode=next" http://example.com/DL/ \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="pgpmode=previous" http://example.com/DL/ \
files/(?:\d+)/@PACKAGE@@ANY_VERSION@@SIGNATURE_EXT@ \
previous
Site HTTP (MUT de base)
Voici un exemple pour les archives amont multiples de base.
version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://example.com/release/foo.html \
files/foo-@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="pgpsigurlmangle=s%$%.sig%, component=bar" \
http://example.com/release/foo.html \
files/foobar-@ANY_VERSION@@ARCHIVE_EXT@ same
opts="pgpsigurlmangle=s%$%.sig%, component=baz" \
http://example.com/release/foo.html \
files/foobaz-@ANY_VERSION@@ARCHIVE_EXT@ same
Pour le paquet source amont principal toto-2.0.tar.gz et les paquets source amont secondaires tototiti-2.0.tar.gz et tototitiz-2.0.tar.gz qui installent dans les répertoires titi/ and titiz/ , ce fichier de veille télécharge et crée le fichier Debian orig.tar , toto_2.0.orig.tar.gz , toto_2.0.orig-titi.tar.gz et toto_2.0.orig-titiz.tar.gz . Les fichiers de signature de ces archives amont sont aussi vérifiées.
Site HTTP (recherche récursive de répertoire)
Voici un exemple avec recherche rĂ©cursive de rĂ©pertoire de lâarchive amont et de ses fichiers de signature publiĂ©s dans un rĂ©pertoire nommĂ© dâaprĂšs leur version.
version=4
opts="pgpsigurlmangle=s%$%.sig%,
dirversionmangle=s/-PRE/Ëpre/;s/-RC/Ërc/" \
http://tmrc.mit.edu/mirror/twisted/Twisted/@ANY_VERSION@/ \
Twisted-@ANY_VERSION@@ARCHIVE_EXT@
Ici, le site web devrait ĂȘtre accessible Ă lâURL suivante :
http://tmrc.mit.edu/mirror/twisted/Twisted/
Ici, lâoption dirversionmangle est utilisĂ©e pour normaliser lâordre de tri des noms de rĂ©pertoire.
Site HTTP (raccourci alternatif)
Pour le site HTTP simple oĂč il est possible de voir directement les noms de fichiers de lâarchive, le fichier de veille normal :
version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://www.cpan.org/modules/by-module/Text/ \
Text-CSV_XS-@ANY_VERSION@@ARCHIVE_EXT@
peut ĂȘtre réécrit dans une forme raccourcie alternative avec une seule chaĂźne englobant lâURL et le nom de fichier :
version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://www.cpan.org/modules/by-module/Text/Text-CSV_XS-@ANY_VERSION@@ARCHIVE_EXT@
Dans version=4, les espaces blancs initiaux sont retirĂ©s. Donc, cette forme raccourcie alternative peut aussi ĂȘtre Ă©crite ainsi :
version=4
opts="pgpsigurlmangle=s%$%.sig%" \
http://www.cpan.org/modules/by-module/Text/\
Text-CSV_XS-@ANY_VERSION@@ARCHIVE_EXT@
Veuillez noter la lĂ©gĂšre diffĂ©rence dâune espace avant le \ final entre le premier et le dernier exemple.
Site HTTP (version exotique)
Pour un site qui possĂšde des numĂ©ros de version exotiques, les groupes entre parenthĂšses devront ĂȘtre joints par des points ( . ) pour crĂ©er un numĂ©ro de version sain.
version=4
http://www.site.com/pub/foobar/foobar_v(\d+)_(\d+)@ARCHIVE_EXT@
Site HTTP (DFSG)
La partie amont du numĂ©ro de version Debian peut ĂȘtre modifiĂ©e pour indiquer que le paquet source a Ă©tĂ© rempaquetĂ© pour retirer les fichiers non-DFSG :
version=4
opts="dversionmangle=s/\+dfsg\d*$//,repacksuffix=+dfsg"
\
http://some.site.org/some/path/foobar-@ANY_VERSION@@ARCHIVE_EXT@
Voir "EXEMPLES DE FICHIER DE COPYRIGHT".
Site HTTP (filenamemangle)
Le nom de fichier de lâarchive amont est dĂ©couvert en prenant le dernier composant de lâURL et en retirant tout ce qui se trouve aprĂšs un "?" ou un "#".
Si cela ne vous convient pas, utiliser filenamemangle . Par exemple, <A href="http://toto.titi.org/dl/?path=&dl=foo-0.1.1.tar.gz"> peut ĂȘtre traitĂ© ainsi :
version=4
opts=filenamemangle=s/.*=(.*)/$1/ \
http://foo.bar.org/dl/\?path=&dl=foo-@ANY_VERSION@@ARCHIVE_EXT@
<A href="http://toto.titi.org/dl/?path=&dl_version=0.1.1"> peut ĂȘtre gĂ©rĂ© comme ceci :
version=4
opts=filenamemangle=s/.*=(.*)/foo-$1\.tar\.gz/ \
http://foo.bar.org/dl/\?path=&dl_version=@ANY_VERSION@
Si la chaĂźne de rĂ©fĂ©rence href nâa pas de version utilisant <I>motif-correspondant>, la version peut ĂȘtre obtenue Ă partir de lâURL complĂšte avec filenamemangle .
version=4
opts=filenamemangle=s&.*/dl/(.*)/foo\.tar\.gz&foo-$1\.tar\.gz&
\
http://foo.bar.org/dl/@ANY_VERSION@/ foo.tar.gz
Site HTTP (downloadurlmangle)
Lâoption downloadurlmangle peut ĂȘtre utilisĂ©e pour modifier lâURL du fichier Ă tĂ©lĂ©charger. Cela ne peut ĂȘtre utilisĂ© quâavec des URL http:// et peut ĂȘtre nĂ©cessaire si le lien donnĂ© sur la page web doit ĂȘtre transformĂ© de maniĂšre Ă ce que cela fonctionne automatiquement, par exemple :
version=4
opts=downloadurlmangle=s/prdownload/download/ \
http://developer.berlios.de/project/showfiles.php?group_id=2051
\
http://prdownload.berlios.de/softdevice/vdr-softdevice-@ANY_VERSION@@ARCHIVE_EXT@
Site HTTP (oversionmangle, MUT)
Lâoption oversionmangle peut ĂȘtre utilisĂ©e pour manipuler la version de lâarchive source ( .orig.tar.gz et .orig-bar.tar.gz ). Par exemple, +dfsg peut ĂȘtre ajoutĂ© Ă la version amont comme ceci :
version=4
opts=oversionmangle=s/(.*)/$1+dfsg/ \
http://example.com/Ëuser/release/foo.html \
files/foo-@ANY_VERSION@@ARCHIVE_EXT@ debian
opts="component=bar" \
http://example.com/Ëuser/release/foo.html \
files/bar-@ANY_VERSION@@ARCHIVE_EXT@ same
Voir "EXEMPLES DE FICHIER DE COPYRIGHT".
Site HTTP (pagemangle)
Lâoption pagemangle peut ĂȘtre utilisĂ©e pour modifier la page web tĂ©lĂ©chargĂ©e avant dâappliquer dâautres rĂšgles. Une page web non standard sans entrĂ©es <a href=" << ... >> "> correctes peut ĂȘtre convertie. Par exemple, si toto.html utilise <un faux site=" ... "> , la conversion vers un format de page standard peut ĂȘtre rĂ©alisĂ©e avec :
version=4
opts=pagemangle="s/<a\s+bogus=/<a href=/g" \
http://example.com/release/foo.html \
files/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@
Veuillez notez ici lâutilisation de g pour remplacer toutes les occurrences.
Si toto.html utilise <Key> ... </Key> , la conversion vers un format de page standard peut ĂȘtre rĂ©alisĂ©e avec :
version=4
opts="pagemangle=s%<Key>([Ë<]*)</Key>%<Key><a
href="$1">$1</a></Key>%g" \
http://example.com/release/foo.html \
(?:.*)/@PACKAGE@@ANY_VERSION@@ARCHIVE_EXT@
Site FTP (de base)Â :
version=4
ftp://ftp.tex.ac.uk/tex-archive/web/c_cpp/cweb/cweb-@ANY_VERSION@@ARCHIVE_EXT@
Site FTP (expressions rationnelles)Â :
version=4
ftp://ftp.worldforge.org/pub/worldforge/libs/\
Atlas-C++/transitional/Atlas-C\+\+-@ANY_VERSION@@ARCHIVE_EXT@
Veuillez noter que cette URL est connectĂ©e pour ĂȘtre ... libs/Atlas-C++/ ... . Pour les ++ , le premier dans le chemin du rĂ©pertoire est verbatim, tandis que celui qui est dans le nom de fichier est protĂ©gĂ© par \ .
Site FTP (version exotique)
Voici une autre maniĂšre pour des sites ayant des numĂ©ros de version bizarres, en effectuant une modification cette fois. (Remarquez que plusieurs groupes seront concatĂ©nĂ©s avant dâeffectuer la modification, et que les modifications ne seront effectuĂ©es que sur le numĂ©ro de version de base, et pas dans les numĂ©ros de versions contenus dans les chemins.)
version=4
opts="uversionmangle=s/Ë/0.0./" \
ftp://ftp.ibiblio.org/pub/Linux/ALPHA/wine/\
development/Wine-@ANY_VERSION@@ARCHIVE_EXT@
sf.net
Pour les projets hĂ©bergĂ©s sur SourceForge, qa.debian.org fournit un redirecteur qui permet une forme plus simple dâURL. Le format ci-dessous sera automatiquement réécrit pour utiliser le redirecteur avec le fichier de veille :
version=4
https://sf.net/<project>/
<tar-name>-@ANY_VERSION@@ARCHIVE_EXT@
Pour audacity , configurer le fichier de veille ainsi :
version=4
https://sf.net/audacity/
audacity-minsrc-@ANY_VERSION@@ARCHIVE_EXT@
Veuillez noter, quâil est encore possible dâutiliser les fonctionnalitĂ©s normales de uscan pour configurer un fichier de veille pour ce site sans utiliser le redirecteur.
version=4
opts="uversionmangle=s/-pre/Ëpre/, \
filenamemangle=s%(?:.*)audacity-minsrc-(.+)\.tar\.xz/download%\
audacity-$1.tar.xz%" \
http://sourceforge.net/projects/audacity/files/audacity/@ANY_VERSION@/
\
(?:.*)audacity-minsrc-@ANY_VERSION@@ARCHIVE_EXT@/download
Ici, % est utilisé comme séparateur à la place du / standard.
github.com
Pour les projets hĂ©bergĂ©s par GitHub, il est possible dâutiliser lâAPI des tags ou des publications. Si le projet amont a correctement nommĂ© ses paquets sur sa page de publications, il est possible de chercher lâURL de tĂ©lĂ©chargement (clef API browser_download_url ) :
version=4
opts=\
filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,\
downloadurlmangle=s%(api.github.com/repos/[Ë/]+/[Ë/]+)/git/refs/%$1/tarball/refs/%g,\
searchmode=plain \
https://api.github.com/repos/<utilisateur>/<projet>/git/matching-refs/tags/
\
https://api.github.com/repos/[Ë/]+/[Ë/]+/git/refs/tags/@ANY_VERSION@
Il est aussi possible de filtrer les tags par préfixe. Par exemple pour obtenir seulement les tags commençant par "v1" :
version=4
opts=\
filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,\
downloadurlmangle=s%(api.github.com/repos/[Ë/]+/[Ë/]+)/git/refs/%$1/tarball/refs/%g,\
searchmode=plain \
https://api.github.com/repos/<utilisateur>/<projet>/git/matching-refs/tags/v1
\
https://api.github.com/repos/[Ë/]+/[Ë/]+/git/refs/tags/@ANY_VERSION@
Alternatives pour publications uniquement (si le projet amont ne supprime pas les tags aprĂšs la publication)Â :
version=4
opts=\
filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,\
downloadurlmangle=s%api.github.com/repos/([Ë/]+/[Ë/]+)/git/refs/tags/@ANY_VERSION@%github.com/$1/archive/refs/tags/$2.tar.gz%g,\
searchmode=plain \
https://api.github.com/repos/<utilisateur>/<projet>/git/matching-refs/tags/
\
https://api.github.com/repos/[Ë/]+/[Ë/]+/git/refs/tags/@ANY_VERSION@
Dans le cas dâune version qui nâutilise pas de tag ou un tag supprimé :
version=4
opts="filenamemangle=s%.*/@ANY_VERSION@%@PACKAGE@-$1.tar.gz%,searchmode=plain"
\
https://api.github.com/repos/<user>/<project>/releases?per_page=100
\
https://api.github.com/repos/<user>/<project>/tarball/@ANY_VERSION@
Sâil y a des archives alpha/beta, il est conseillĂ© utiliser lâoption uversionmangle : uversionmangle=s/(a|alpha|b|beta|c|dev|pre|rc)/Ë$1/
Si le projet amont oublie dâĂ©tiqueter une version publiĂ©e, par exemple ici la version 1.2.3 correspondant Ă la commission "0123456789abcdf01234567890abcef012345678", vous pouvez la tĂ©lĂ©charger en utilisant la combinaison suivante dâoptions oversionmangle , filenamemangle et downloadurlmangle :
version=4
opts=\
downloadurlmangle=s%(api.github.com/repos/[Ë/]+/[Ë/]+)/git/refs/.*%$1/tarball/0123456789abcdf01234567890abcef012345678%g,\
oversionmangle=s/.*/1.2.3Ëgit/g,\
filenamemangle=s%.*%1.2.3Ëgit.tar.gz%,\
searchmode=plain \
https://api.github.com/repos/ImageMagick/ImageMagick/git/matching-refs/tags/
\
https://api.github.com/repos/[Ë/]+/[Ë/]+/git/refs/tags/@ANY_VERSION@
Dans ce cas ne pas oublier, aprÚs avoir exécuté gbp import-orig --uscan , de retirer ces changements du fichier debian/watch .
PyPI
Pour les projets hĂ©bergĂ©s sur PyPI, pypi.debian.net fournit un redirecteur qui permet une forme plus simple dâURL. Le format ci-dessous sera automatiquement réécrit pour utiliser le redirecteur avec le fichier de veille :
version=4
https://pypi.python.org/packages/source/<initial>/<project>/
\
<tar-name>-@ANY_VERSION@@ARCHIVE_EXT@
Pour cfn-sphere , configurer le fichier ainsi :
version=4
https://pypi.python.org/packages/source/c/cfn-sphere/ \
cfn-sphere-@ANY_VERSION@@ARCHIVE_EXT@
Veuillez noter, quâil est encore possible dâutiliser les fonctionnalitĂ©s normales de uscan pour configurer un fichier de veille pour ce site sans utiliser le redirecteur.
version=4
opts="pgpmode=none" \
https://pypi.python.org/pypi/cfn-sphere/ \
https://pypi.python.org/packages/.*/.*/.*/\
cfn-sphere-@ANY_VERSION@@ARCHIVE_EXT@#.*
code.google.com
Les sites habituellement hĂ©bergĂ©s sur le service Google Code devraient avoir migrĂ© ailleurs (github ?). Veuillez rechercher les sites amont les plus rĂ©cents sâils sont disponibles.
npmjs.org (modules Node)
Les modules npmjs.org sont publiés au format JSON. Voici un moyen de les lire :
version=4
opts="searchmode=plain" \
https://registry.npmjs.org/aes-js \
https://registry.npmjs.org/aes-js/-/aes-js-@ANY_VERSION@@ARCHIVE_EXT@
paquet groupé
Certains modules Node sont découpés en de multiples petits paquets. Voici un moyen de les grouper :
version=4
opts="searchmode=plain,pgpmode=none" \
https://registry.npmjs.org/mongodb \
https://registry.npmjs.org/mongodb/-/mongodb-@ANY_VERSION@@ARCHIVE_EXT@
group
opts="searchmode=plain,pgpmode=none,component=bson"
\
https://registry.npmjs.org/bson \
https://registry.npmjs.org/bson/-/bson-@ANY_VERSION@@ARCHIVE_EXT@
group
opts="searchmode=plain,pgpmode=none,component=mongodb-core"
\
https://registry.npmjs.org/mongodb-core \
https://registry.npmjs.org/mongodb-core/-/mongodb-core-@ANY_VERSION@@ARCHIVE_EXT@
group
opts="searchmode=plain,pgpmode=none,component=requireoptional"
\
https://registry.npmjs.org/require_optional \
https://registry.npmjs.org/require_optional/-/require_optional-@ANY_VERSION@@ARCHIVE_EXT@
group
La version du paquet est alors la concatĂ©nation des versions amont sĂ©parĂ©es par "+Ë".
Pour Ă©viter dâavoir un trop long numĂ©ro de version, la mĂ©thode "checksum" (somme de contrĂŽle) peut ĂȘtre utilisĂ©e. Dans ce cas la principale source doit ĂȘtre dĂ©clarĂ©e comme "group" :
version=4
opts="searchmode=plain,pgpmode=none" \
https://registry.npmjs.org/mongodb \
https://registry.npmjs.org/mongodb/-/mongodb-@ANY_VERSION@@ARCHIVE_EXT@
group
opts="searchmode=plain,pgpmode=none,component=bson"
\
https://registry.npmjs.org/bson \
https://registry.npmjs.org/bson/-/bson-@ANY_VERSION@@ARCHIVE_EXT@
checksum
opts="searchmode=plain,pgpmode=none,component=mongodb-core"
\
https://registry.npmjs.org/mongodb-core \
https://registry.npmjs.org/mongodb-core/-/mongodb-core-@ANY_VERSION@@ARCHIVE_EXT@
checksum
opts="searchmode=plain,pgpmode=none,component=requireoptional"
\
https://registry.npmjs.org/require_optional \
https://registry.npmjs.org/require_optional/-/require_optional-@ANY_VERSION@@ARCHIVE_EXT@
checksum
La somme de contrĂŽle est composĂ©e des sommes sĂ©parĂ©es de chaque nombre composant la version des composants et prĂ©fixĂ©e par Ëcs (abrĂ©viation de "checksum"). Voici un exemple avec 3 composants dont les versions respectives sont : "1.2.4", "2.0.1" et "10.0", et la version de lâarchive principale est "2.0.6" :
Principale :
2.0.6
Comp1Â : 1 . 2 . 4
Comp2Â : 2 . 0 . 1
Comp3Â : 10 . 0
=================================
Addition : 1+2+10 . 2+0+0 . 4+1
Résultat : 13 . 2 . 5
=================================
Version finale : 2.0.6+Ëcs13.2.5
uscan affichera Ă©galement la chaĂźne de version originale avant encodage en somme de contrĂŽle, ce qui peut ĂȘtre utilisĂ© par exemple dans une entrĂ©e de debian/changelog pour suivre facilement les changements :
2.0.6+Ë1.2.4+Ë2.0.1+Ë10.0
Note : cette fonctionnalitĂ© nâaccepte actuellement que les versions composĂ©es exclusivement de chiffres et de points (".").
accÚs direct au dépÎt git (étiquettes)
Si lâĂ©quipe amont ne publie son code que dans un dĂ©pĂŽt git et que son code nâa pas dâinterface web pour obtenir lâarchive publiĂ©e, il est possible dâutiliser uscan avec les Ă©tiquettes du dĂ©pĂŽt git pour suivre et empaqueter la nouvelle publication amont.
version=4
opts="mode=git, gitmode=full, pgpmode=none" \
http://git.ao2.it/tweeper.git \
refs/tags/v@ANY_VERSION@
Veuillez noter que " git ls-remote " est utilisé pour obtenir les références des étiquettes.
Si lâĂ©tiquette v20.5 est lâĂ©tiquette la plus rĂ©cente, lâexemple ci-dessus tĂ©lĂ©charge spkg -20.5.tar.xz aprĂšs avoir fait un clone complet du dĂ©pĂŽt git nĂ©cessaire au serveur git simple.
Si les tags sont signés, utiliser pgpmode=gittag pour les vérifier.
accÚs direct au dépÎt git (HEAD)
Si lâĂ©quipe amont ne publie son code que dans un dĂ©pĂŽt git et que son code nâa pas dâinterface web ni les Ă©tiquettes pour obtenir lâarchive publiĂ©e, il est possible dâutiliser uscan avec le HEAD du dĂ©pĂŽt git pour suivre et empaqueter la nouvelle publication amont avec une chaĂźne de version gĂ©nĂ©rĂ©e automatiquement.
version=4
opts="mode=git, pgpmode=none" \
https://github.com/Debian/dh-make-golang \
HEAD
Veuillez noter quâune copie superficielle locale du dĂ©pĂŽt git est rĂ©alisĂ©e avec la commande " git clone --bare --depth=1 ..." normalement dans le rĂ©pertoire cible. uscan gĂ©nĂšre la nouvelle version amont avec " git log --date=%Y%m%d --pretty=0.0Ëgit%cd.%h " sur cette copie locale du dĂ©pĂŽt, comme comportement par dĂ©faut.
La crĂ©ation de la chaĂźne de version amont peut ĂȘtre ajustĂ©e Ă votre goĂ»t en ajoutant les options pretty et date aux arguments de opts .
accÚs direct au dépÎt git (avec sous-modules)
Si lâĂ©quipe amont ne publie son code que dans un dĂ©pĂŽt git incluant des sous-modules, vous pouvez utiliser uscan avec les Ă©tiquettes ou la tĂȘte (HEAD) du dĂ©pĂŽt git pour suivre et empaqueter la nouvelle publication amont.
Utiliser gitmodules pour cloner tous les sous-modules :
version=4
opts="mode=git, gitmode=shallow, gitmodules" \
https://github.com/namespace/project
[refs/tags/v@ANY_VERSION@|HEAD]
Pour cloner des sous-modules sĂ©lectionnĂ©s (et en exclure dâautres), utiliser gitmodules avec une liste en sĂ©parant les Ă©lĂ©ments par des points-virgules :
version=4
opts="mode=git, gitmode=shallow,
gitmodules=m4;doc/common" \
https://github.com/namespace/project
[refs/tags/v@ANY_VERSION@|HEAD]
accÚs direct au dépÎt Subversion (étiquettes)
Si lâĂ©quipe amont ne publie son code que dans un dĂ©pĂŽt Subversion et que son code nâa pas dâinterface web pour obtenir lâarchive publiĂ©e, il est possible dâutiliser uscan avec les Ă©tiquettes du dĂ©pĂŽt Subversion pour suivre et empaqueter la nouvelle publication amont.
version=4
opts="mode=svn, pgpmode=none" \
svn://svn.code.sf.net/p/jmol/code/tags/ \
@ANY_VERSION@\/
accÚs direct au dépÎt Subversion (HEAD)
Si lâĂ©quipe amont ne publie son code que dans un dĂ©pĂŽt Subversion et que son code nâa pas dâinterface web ni les Ă©tiquettes pour obtenir lâarchive publiĂ©e, il est possible dâutiliser uscan pour obtenir les derniĂšres sources dâune sous-arborescence avec une chaĂźne de version gĂ©nĂ©rĂ©e automatiquement.
version=4
opts="mode=svn, pgpmode=none" \
svn://svn.code.sf.net/p/jmol/code/trunk/ \
HEAD
Par dĂ©faut, uscan gĂ©nĂšre la nouvelle version en ajoutant "0.0Ësvn" au numĂ©ro de rĂ©vision. Ce peut ĂȘtre changĂ© en utilisant uversionmangle .
Fossil
Pour les projets basĂ©s sur Fossil, lâURL de lâarchive peut ĂȘtre dĂ©duite de la page listant les Ă©tiquettes.
version=4
opts=" \
searchmode=plain, \
filenamemangle=s/timeline\?t=(@ANY_VERSION@)/@PACKAGE@-$1.tar.gz/,
\
downloadurlmangle=s#/timeline\?t=(@ANY_VERSION@)#/tarball/Grammalecte.tar.gz?r=$1#"
\
http://grammalecte.net:8080/taglist \
/timeline\?t=@ANY_VERSION@
EXEMPLES DE FICHIER DE COPYRIGHT
Voici un exemple de fichier debian/copyright qui dĂ©clenche le rempaquetage automatique de lâarchive amont en <spkg>_<oversion>.orig.tar.gz (dans debian/copyright , les alinĂ©as Files-Excluded et Files-Excluded- component font partie du premier paragraphe et il existe un ligne vide avant les paragraphes suivants qui contiennent Files et dâautres alinĂ©as.) :
Format:
http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files-Excluded: exclude-this
exclude-dir
*/exclude-dir
.*
*/js/jquery.js
Files: *
Copyright: ...
...
Voici un autre exemple de fichier debian/copyright qui dĂ©clenche le rempaquetage automatique dâarchives amont multiples en <spkg>_<oversion>.orig.tar.gz et <spkg>_<oversion>.orig-bar.tar.gz :
Format:
http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files-Excluded: exclude-this
exclude-dir
*/exclude-dir
.*
*/js/jquery.js
Files-Excluded-bar: exclude-this
exclude-dir
*/exclude-dir
.*
*/js/jquery.js
Files: *
Copyright: ...
...
Voir mk-origtargz (1).
EXEMPLES DE FICHIER DE TROUSSEAU
Supposons que la " clef de test dâuscan (non secrĂšte) <none@debian.org> " amont signe son paquet avec une clef secrĂšte OpenPGP et publie la clef publique OpenPGP correspondante. Cette clef publique OpenPGP peut ĂȘtre identifiĂ©e de trois façons diffĂ©rentes avec sa forme hexadĂ©cimale.
|
âą |
Lâempreinte sous la forme des 20 octets de donnĂ©es calculĂ©s Ă partir de la clef publique OpenPGP. Par exemple " CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68 7254 3FAF |
||
|
âą |
Lâidentificateur long " long keyid") sous la forme des 8 derniers octets de donnĂ©es de lâempreinte. Par exemple, " C77E2D6872543FAF " |
||
|
âą |
Lâidentificateur court ("short keyid") sous la forme des 4 derniers octets de donnĂ©es de lâempreinte. Par exemple, " 72543FAF " |
Compte tenu de lâexistence des attaques par collisions sur les identificateurs courts, il est recommandĂ© dâutiliser lâidentificateur long pour recevoir des clefs Ă partir des serveurs de clefs publiques. Vous devez vĂ©rifier la clef OpenPGP tĂ©lĂ©chargĂ©e en utilisant la valeur de son empreinte complĂšte dont vous savez quâelle est sĂ»re.
Le fichier de trousseau blindĂ© debian/upstream/signing-key.asc peut ĂȘtre créé en utilisant la commande gpg comme suit.
$ gpg
--recv-keys "C77E2D6872543FAF"
...
$ gpg --finger "C77E2D6872543FAF"
pub 4096R/72543FAF 2015-09-02
Key fingerprint = CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68
7254 3FAF
uid uscan test key (no secret) <none@debian.org>
sub 4096R/52C6ED39 2015-09-02
$ cd chemin/vers/<upkg>-<uversion>
$ mkdir -p debian/upstream
$ gpg --export --export-options export-minimal --armor \
'CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68 7254 3FAF' \
>debian/upstream/signing-key.asc
Les fichiers de trousseau binaires, debian/upstream/signing-key.pgp et debian/upstream-signing-key.pgp , sont encore gérés, mais ils sont obsolÚtes.
Si un groupe de dĂ©veloppeurs signe le paquet, il faut la liste des empreintes de chacun dâentre eux dans le paramĂštre pour gpg --export ... afin que le trousseau contienne toutes leurs clefs OpenPGP.
Parfois, on se demande qui a créé le fichier de signature. Il est possible dâobtenir lâidentificateur de la clef publique utilisĂ© pour crĂ©er le fichier de signature sĂ©parĂ© toto-2.0.tar.gz.asc en exĂ©cutant gpg ainsi :
$ gpg -vv
toto-2.0.tar.gz.asc
gpg: armor: BEGIN PGP SIGNATURE
gpg: armor header: Version: GnuPG v1
:signature packet: algo 1, keyid C77E2D6872543FAF
version 4, created 1445177469, md5len 0, sigclass 0x00
digest algo 2, begin of digest 7a c7
hashed subpkt 2 len 4 (sig created 2015-10-18)
subpkt 16 len 8 (issuer key ID C77E2D6872543FAF)
data: [4091 bits]
gpg: assuming signed data in `toto-2.0.tar.gz'
gpg: Signature made Sun 18 Oct 2015 11:11:09 PM JST using
RSA key ID 72543FAF
...
OPTIONS DE LIGNE DE COMMANDE
Pour un usage
basique dâ
uscan
, la configuration de ces
options nâest pas nĂ©cessaire.
--conffile
,
--conf-file
Ajoute ou remplace les fichiers
de configuration par défaut
("/etc/devscripts.conf" and
"Ë/.devscripts"). Lâoption ne peut
ĂȘtre utilisĂ©e quâen premiĂšre
position de la ligne de commande.
remplacer :
uscan --conf-file test.conf --verbose
ajouter :
uscan --conf-file +test.conf --verbose
Si lâun des --conf-file ne contient pas de "+", les fichiers de configuration par dĂ©faut sont ignorĂ©s.
--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.
--no-verbose
Ne pas rapporter dâinformations verbeuses. (Par dĂ©faut).
--verbose , -v
Rapporter des informations verbeuses.
--debug , -vv
Rapporter des informations verbeuses et les valeurs de certains états internes.
--extra-debug , -vvv
Rapporter des informations verbeuses y compris les pages web tĂ©lĂ©chargĂ©es traitĂ©es sur la sortie dâerreur standard pour dĂ©bogage.
--dehs
Envoyer la sortie de style DEHS (type XML) sur la sortie standard, tout en envoyant toutes les autres sorties de uscan sur la sortie dâerreur standard.
--no-dehs
Utiliser seulement le format de sortie traditionnel de uscan. (Par défaut)
--download , -d
Télécharger la nouvelle version amont. (Par défaut)
--force-download , -dd
TĂ©lĂ©charger la nouvelle version amont mĂȘme si elle est Ă jour (peut ne pas Ă©craser les fichiers locaux).
--overwrite-download , -ddd
TĂ©lĂ©charger le fichier amont mĂȘme si le paquet est Ă jour (peut Ă©craser les fichiers locaux).
--no-download , --nodownload
Ne pas tĂ©lĂ©charger ni rapporter dâinformation.
Des archives prĂ©cĂ©demment tĂ©lĂ©chargĂ©es peuvent ĂȘtre utilisĂ©es.
Passage du comportement par défaut à --skip-signature .
--signature
Télécharger la signature. (Par défaut)
--no-signature
Ne pas télécharger la signature, mais vérifier si elle a déjà été téléchargée.
-skip-signature
Ne pas sâoccuper de tĂ©lĂ©charger ni de vĂ©rifier la signature.
--safe , --report
Ăviter lâexĂ©cution de scripts non sĂ©curisĂ©s en sautant Ă la fois le rempaquetage du paquet tĂ©lĂ©chargĂ© et la mise Ă jour de lâarborescence de la nouvelle source.
Passage du comportement par défaut à --no-download et --skip-signature .
Quand lâobjectif de lâexĂ©cution de uscan est de recueillir lâĂ©tat du paquet amont sous un environnement conscient de la sĂ©curitĂ©, veuillez vous assurer dâutiliser cette option.
--report-status
Ăquivaut Ă utiliser lâoption --verbose --safe .
--download-version version
Indiquer la version Ă laquelle la version amont doit correspondre pour ĂȘtre prise en compte, plutĂŽt quâutiliser celle avec le numĂ©ro de version le plus important (fonctionnalitĂ© optimale).
--download-debversion version
Préciser la version du paquet Debian dont il faut télécharger la version amont correspondante. Les rÚgles dversionmangle et uversionmangle sont prises en compte (fonctionnalité au meilleur effort).
--download-current-version
Télécharger la version actuelle du paquet. (fonctionnalité optimale)
--check-dirname-level N
Veuillez consulter la section "Vérification du nom du répertoire" ci-dessus pour une explication de cette option.
--check-dirname-regex regex
Veuillez consulter la section "Vérification du nom du répertoire" ci-dessus pour une explication de cette option.
--destdir
chemin
Normalement,
uscan
change son répertoire
courant
interne pour le rĂ©pertoire source du paquet oĂč
le répertoire
debian/
est situé. Ensuite, le répertoire de
destination de lâarchive
téléchargée et des autres fichiers est
défini sur le répertoire parent
../
à partir de ce répertoire courant
interne.
Le rĂ©pertoire de destination par dĂ©faut peut ĂȘtre remplacĂ© en dĂ©finissant lâoption --destdir vers un chemin particulier. Si ce chemin est un chemin relatif, le rĂ©pertoire de destination est dĂ©terminĂ© relativement au rĂ©pertoire courant interne dâexĂ©cution dâ uscan . Si ce chemin est un chemin absolu, le rĂ©pertoire de destination est fixĂ© Ă chemin indĂ©pendamment du rĂ©pertoire courant interne dâexĂ©cution dâ uscan .
Ce qui prĂ©cĂšde est vrai non seulement pour lâexĂ©cution unique dâ uscan dans une arborescence de sources unique, mais aussi pour lâexĂ©cution par uscan dâune recherche avancĂ©e dans des sous-rĂ©pertoires contenant plusieurs arborescences de sources.
Une exception existe quand les options --watchfile et --package sont utilisĂ©es ensemble. Dans ce cas, le rĂ©pertoire courant interne dâexĂ©cution dâ uscan et le rĂ©pertoire de destination par dĂ©faut sont dĂ©finis au rĂ©pertoire courant . oĂč uscan est lancĂ©. Le rĂ©pertoire de destination par dĂ©faut peut ĂȘtre remplacĂ© en dĂ©finissant aussi lâoption --destdir .
--package paquet
Indiquer le nom du paquet Ă contrĂŽler plutĂŽt quâexaminer debian/changelog ; cela nĂ©cessite les options --upstream-version (Ă moins quâune option ne soit prĂ©cisĂ©e dans le fichier watch ) et --watchfile . De plus, aucun rĂ©pertoire ne sera scannĂ© et rien ne sera tĂ©lĂ©chargĂ©. Cette option configure automatiquement --no-download et --skip-signature ; elle est probablement la plus utile en conjonction avec le systĂšme DEHS (et --dehs ).
--upstream-version version-amont
Indiquer la version amont actuelle plutĂŽt quâexaminer le fichier debian/watch ou le journal des modifications de Debian pour le dĂ©terminer. Câest ignorĂ© si un balayage de rĂ©pertoire est fait et que plus dâun fichier debian/watch est trouvĂ©.
--vcs-export-uncompressed
Supprimer la compression dâarchives exportĂ©es depuis un systĂšme de contrĂŽle de versions (Git ou Subversion). Cela occupe plus dâespace, mais permet de gagner du temps si mk-origtargz doit rĂ©empaqueter lâarchive pour exclure des fichiers. Force le rĂ©empaquetage de toutes les archives exportĂ©es.
--watchfile watchfile
Indiquer le fichier watch plutĂŽt que faire un balayage de rĂ©pertoire pour le dĂ©terminer. Si cette option est utilisĂ©e sans --package , uscan devra ĂȘtre appelĂ© depuis lâarborescence du paquet Debian source (de sorte que debian/changelog puisse ĂȘtre trouvĂ© simplement par une recherche dans lâarborescence).
Une exception existe quand les options --watchfile et --package sont utilisĂ©es ensemble. uscan peut ĂȘtre appelĂ© Ă partir de nâimporte quel rĂ©pertoire et le rĂ©pertoire courant interne dâexĂ©cution dâ uscan et le rĂ©pertoire de destination par dĂ©faut sont dĂ©finis au rĂ©pertoire courant . oĂč uscan est lancĂ©.
Vous trouverez plus dâinformations dans lâexplication de --destdir .
--bare
DĂ©sactiver tout le code "special code" spĂ©cifique au site pour rĂ©aliser les redirections dâURL et les altĂ©rations de contenu de page.
--http-header
Ajoute lâen-tĂȘte spĂ©cifiĂ© dans les requĂȘtes HTTP correspondant Ă lâurl. Cette option peut ĂȘtre multivaluĂ©e, les valeurs doivent ĂȘtre de la forme "baseUrl@NomEnTĂȘte=valeur". Exemple :
uscan --http-header https://example.org@My-Token=azertyuiop
Sécurité :
LâURL
baseUrl
doit exactement correspondre
Ă lâURL de base avant
"/". Exemples :
| valeur --http-header | Bonne
pour | Inutilisée |
+------------------------------------+-----------------------------+------------+
| https://example.org.com@Hdr=Value |
https://example.org.com/... | |
| https://example.org.com/@Hdr=Value | | X |
| https://e.com:1879@Hdr=Value | https://e.com:1879/... | |
| https://e.com:1879/dir@Hdr=Value |
https://e.com:1879/dir/... | |
| https://e.com:1879/dir/@Hdr=Value | | X |
Il est vivement
recommandé de ne pas utiliser cette
fonctionnalité
pour passer un jeton secret via une connexion non
chiffrée
(http://)
On peut utiliser la variable "USCAN_HTTP_HEADER"
(dans
"Ë/.devscripts") pour masquer les jetons
secrets des scripts
--no-exclusion
Ne pas exclure automatiquement les fichiers mentionnés dans le champ Files-Excluded de debian/copyright .
--pasv
Forcer le mode passif ("PASV") pour les connexions FTP.
--no-pasv
Ne pas utiliser le mode passif (PASV) pour les connexions FTP.
--no-symlink
Ne pas renommer ni rempaqueter lâarchive amont.
--timeout N
DĂ©finir le temps dâattente Ă N secondes (20 secondes par dĂ©faut).
--user-agent , --useragent
Utiliser un champ "user agent" différent de celui par défaut.
--help
Afficher un bref message dâaide.
--version
Afficher les informations sur la version.
uscan
accepte aussi les options suivantes et les passe Ă
mk-origtargz
:
--symlink
Faire des fichiers rĂ©sultants orig.tar.gz (avec lâextension appropriĂ©e) des liens symboliques vers les fichiers tĂ©lĂ©chargĂ©s (câest le comportement par dĂ©faut).
--copy
Au lieu de créer des liens symboliques comme décrit précédemment, copier les fichiers téléchargés.
--rename
Au lieu de créer des liens symboliques comme décrit précédemment, renommer les fichiers téléchargés.
--repack
AprÚs avoir téléchargé une archive lzma tar, xz tar, bzip tar, gz tar, lz tar, zip, jar, xpi, zstd, la réempaqueter à la compression spécifiée (voir --compression ).
Le paquet unzip doit ĂȘtre installĂ© pour rĂ©empaqueter les archives zip, jar et xpi, le paquet xz-utils pour les archives tar compressĂ©es avec lzma ou xz, le paquet zstd pour les archives zstd et le paquet lzip pour les archives lz tar.
--compression [ gzip | bzip2 | lzma | xz ]
Au cas oĂč les sources amont sont rempaquetĂ©s (soit parce que lâoption --repack est donnĂ©e, soit parce que debian/copyright contient le champ Files-Excluded ), la mĂ©thode de compression peut ĂȘtre contrĂŽlĂ©e avec le paramĂštre comp . La mĂ©thode par dĂ©faut est gzip pour les archives normales, et xz pour les archives gĂ©nĂ©rĂ©es directement Ă partir du dĂ©pĂŽt git.
--copyright-file fichier_de_copyright
Exclure les fichiers mentionnĂ©s dans le champ Files-Excluded du fichier_de_copyright donnĂ©. Câest utile lors de lâutilisation dâ uscan en dehors dâun rĂ©pertoire de paquet source.
VARIABLES DE CONFIGURATION DE DEVSCRIPT
Pour une utilisation de base dâ uscan , la configuration de ces variables nâest pas nĂ©cessaire.
Les deux
fichiers de configuration
/etc/devscripts.conf
et
Ë/.devscripts
sont évalués dans
cet ordre par un interpréteur de commandes
("shell") pour placer les variables de
configuration. Des options de ligne de commande peuvent
ĂȘtre utilisĂ©es pour neutraliser les
paramĂštres des fichiers de configuration. Les
paramĂštres des variables dâenvironnement sont
ignorés à cette fin. Si la premiÚre
option donnée en ligne de commande est
--noconf
, alors ces fichiers ne sont pas
évalués. Les variables actuellement
identifiées sont :
USCAN_DOWNLOAD
Télécharger ou
rapporter lâinformation seulement:
no
: Ă©quivaut Ă
--no-download
,
les nouveaux fichiers ne seront pas
téléchargés.
yes
: equivaut Ă
--download
, les nouveaux
fichiers amont seront
tĂ©lĂ©chargĂ©s. Câest le
comportement par défaut.
Voir aussi --force-download and --overwrite-download .
USCAN_SAFE
Si elle est dĂ©finie Ă yes , alors uscan Ă©vite lâexĂ©cution de scripts non sĂ©curisĂ©s en sautant Ă la fois le rempaquetage du paquet tĂ©lĂ©chargĂ© et la mise Ă jour de lâarborescence de la nouvelle source ; câest lâĂ©quivalent des options --safe ; cela dĂ©finit aussi les options par dĂ©faut Ă --no-download et --skip-signature .
USCAN_PASV
Si elle est dĂ©finie Ă yes ou no , cela force respectivement Ă utiliser ou Ă ne pas utiliser le mode passif pour les connexions FTP. Si elle est dĂ©finie Ă default , alors Net::FTP (3) fait un choix (basĂ© principalement sur la variable dâenvironnement FTP_PASSIVE ).
USCAN_TIMEOUT
Si cette option est dĂ©finie Ă un nombre N , alors dĂ©finir le temps limite Ă N secondes. Câest Ă©quivalent Ă lâoption --timeout .
USCAN_SYMLINK
Si cette option est mise Ă no , un lien symbolique vers paquet _ version .orig.tar.{gz|bz2|lzma|xz} ne sera pas créé (Ă©quivalent Ă lâoption --no-symlink ). Si elle est Ă yes ou symlink , les liens symboliques seront créés. Si elle est Ă rename , les fichiers sont renommĂ©s (Ă©quivalent Ă lâoption --rename ).
USCAN_DEHS_OUTPUT
Si cette option est Ă yes , alors la sortie sera de type DEHS, comme si lâoption --dehs Ă©tait utilisĂ©e.
USCAN_VERBOSE
Si elle est dĂ©finie Ă yes , alors la sortie sera verbeuse, comme si lâoption --verbose Ă©tait utilisĂ©e.
USCAN_USER_AGENT
Si elle est dĂ©finie, elle spĂ©cifie la chaĂźne Ă utiliser pour annoncer le navigateur ("user agent") Ă la place de la valeur par dĂ©faut. Câest Ă©quivalent Ă lâoption --user-agent .
USCAN_DESTDIR
Si elle est dĂ©finie, elle dĂ©signe le rĂ©pertoire oĂč les fichiers tĂ©lĂ©chargĂ©s seront placĂ©s. Câest Ă©quivalent Ă lâoption --destdir .
USCAN_REPACK
Si elle est dĂ©finie Ă yes , alors aprĂšs avoir tĂ©lĂ©chargĂ© une archive tar compressĂ©e avec bzip, lzma, xz ou zstd ou une archive ZIP, uscan recrĂ©era une archive compressĂ©e du type dĂ©fini (voir --compression ). Câest Ă©quivalent Ă lâoption --repack .
USCAN_EXCLUSION
Si elle est dĂ©finie Ă no , les fichiers mentionnĂ©s dans le champ Files-Excluded de debian/copyright seront ignorĂ©s et aucune exclusion de fichiers ne sera tentĂ©e. Câest Ă©quivalent Ă lâoption --no-exclusion .
USCAN_HTTP_HEADER
Si dĂ©finie, lâen-tĂȘte spĂ©cifiĂ© sera utilisĂ© pour toutes les URLs correspondantes. Câest Ă©quivalent Ă lâoption --http-header .
USCAN_VCS_EXPORT_UNCOMPRESSED
Si elle est dĂ©finie Ă yes , les archives exportĂ©es depuis un systĂšme de contrĂŽle de versions ne seront pas compressĂ©es. Câest Ă©quivalent Ă lâoption --vcs-export-uncompressed .
VALEURS DE RETOUR
Le code de retour indique si une nouvelle version a Ă©tĂ© trouvĂ©e ; il est conseillĂ© de lire la sortie pour dĂ©terminer exactement ce qui sâest passĂ© et pour voir sâil nây a pas eu dâavertissement.
|
0 |
Soit les options --help ou --version ont été utilisées, soit une nouvelle version amont a été trouvée pour un des fichiers watch examinés. |
||
|
1 |
Aucune nouvelle version amont nâa Ă©tĂ© trouvĂ©e pour les fichiers watch examinĂ©s. |
FONCTIONNALITĂS AVANCĂES
uscan possĂšde beaucoup dâautres fonctionnalitĂ©s qui sont sautĂ©es dans la section ci-dessus, pour ĂȘtre plus simple. Regardons leurs points marquants.
uscan peut ĂȘtre exĂ©cutĂ© avec chemin comme paramĂštre pour passer le rĂ©pertoire de dĂ©part de recherche du rĂ©pertoire courant Ă chemin .
Si vous ne savez pas exactement ce qui se passe dans les coulisses, veuillez activer lâoption --verbose . Si ce nâest pas suffisant, activez lâoption --debug pour voir toutes les actions internes.
Voir "OPTIONS DE LIGNE DE COMMANDE" et "VARIABLES DE CONFIGURATION DE DEVSCRIPT" pour dâautres variantes.
Script personnalisé
Le paramÚtre optionnel script dans debian/watch signifie exécuter script avec des options aprÚs avoir traité cette ligne si elle est spécifiée.
Voir "HISTORIQUE ET MISE à NIVEAU" pour voir comment uscan invoque le <script> personnalisé.
Pour des raisons de compatibilitĂ© avec dâautres outils tels que git-buildpackage , il peut ĂȘtre judicieux de ne pas crĂ©er des scripts personnalisĂ©s au comportement alĂ©atoire. En gĂ©nĂ©ral, uupdate est le meilleur choix pour un paquet non natif, et les scripts personnalisĂ©s, sâils existent, devraient se comporter comme uupdate . Pour des cas dâutilisation potentiels, voir <http://bugs.debian.org/748474> comme exemple.
DĂ©tournement dâURL
Certains sites populaires ont changĂ© leur structure de page web provoquant des problĂšmes de maintenance du fichier de veille. Des services de redirection ont Ă©tĂ© créés pour faciliter sa maintenance. Actuellement, uscan fait un dĂ©tournement automatique des requĂȘtes dâURL pour les URL suivantes afin de gĂ©rer cette situation.
|
âą |
<http://sf.net> |
|||
|
âą |
<http://pypi.python.org> |
Vérification du nom du répertoire
Comme plusieurs autres scripts du paquet devscripts , uscan parcourt lâarborescence du rĂ©pertoire demandĂ© Ă la recherche de fichiers debian/changelog et debian/watch . Pour se protĂ©ger contre certains fichiers Ă©garĂ©s qui pourraient poser problĂšme, et pour des raisons dâefficacitĂ©, il examine le nom du rĂ©pertoire parent une fois quâil a trouvĂ© le fichier debian/changelog , et vĂ©rifie que le nom du rĂ©pertoire correspond au nom du paquet. Il ne cherchera Ă tĂ©lĂ©charger les nouvelles versions dâun paquet et Ă effectuer lâaction demandĂ©e que si le nom du rĂ©pertoire correspond au nom du paquet. La façon prĂ©cise utilisĂ©e est contrĂŽlĂ©e par les deux variables du fichier de configuration DEVSCRIPTS_CHECK_DIRNAME_LEVEL et DEVSCRIPTS_CHECK_DIRNAME_REGEX , et les options en ligne de commande associĂ©es --check-dirname-level et --check-dirname-regex .
DEVSCRIPTS_CHECK_DIRNAME_LEVEL peut prendre les valeurs suivantes :
|
0 |
Ne jamais vérifier le nom du répertoire. |
||
|
1 |
Ne vĂ©rifie le nom du rĂ©pertoire que sâil a fallu changer de rĂ©pertoire pour trouver le fichier debian/changelog , câest-Ă -dire que le rĂ©pertoire qui contient debian/changelog nâest pas le rĂ©pertoire dans lequel uscan a Ă©tĂ© invoquĂ©. Câest le comportement par dĂ©faut. |
||
|
2 |
Toujours vérifier le nom du répertoire. |
Le nom du rĂ©pertoire est vĂ©rifiĂ© en testant si le nom du rĂ©pertoire actuel (donnĂ© par pwd (1)) correspond Ă lâexpression rationnelle donnĂ©e par la variable DEVSCRIPTS_CHECK_DIRNAME_REGEX du fichier de configuration ou par lâoption --check-dirname-regex expression_rationnelle . Il sâagit dâune expression rationnelle Perl (voir perlre (1)), qui sera ancrĂ©e Ă son dĂ©but et Ă sa fin. Si elle contient un / , alors elle doit correspondre au chemin complet. Sinon, elle doit correspondre au nom de rĂ©pertoire complet. Si elle contient la chaĂźne paquet , cette chaĂźne sera remplacĂ©e par le nom du paquet source dĂ©terminĂ© par le fichier debian/changelog . La valeur par dĂ©faut de cette expression rationnelle est : paquet (-.+)? , ce qui correspond aux rĂ©pertoires nommĂ©s paquet ou paquet-version .
HISTORIQUE ET MISE Ă NIVEAU
Cette section
décrit briÚvement les incompatibilités
inverses des fonctionnalités du fichier
watch
qui ont été ajoutées dans chaque
version du fichier
watch
et la premiĂšre
version du paquet
devscripts
qui les comprenait.
Versions antérieures à  2
La syntaxe du fichier watch Ă©tait trĂšs diffĂ©rente Ă lâĂ©poque. Ne lâutilisez plus. Si vous mettez votre fichier watch Ă niveau depuis une version antĂ©rieure Ă 2, il est recommandĂ© de lire cette page de manuel et de recommencer Ă zĂ©ro.
Version 2
devscripts version 2.6.90 : la premiÚre incarnation du style actuel de fichier watch . Cette version est également dépréciée et sera rejetée dÚs la publication de Debian 11.
Version 3
devscripts version 2.8.12 a introduit les choses suivantes : manipulation correcte des expressions rationnelles dans la partie du chemin, recherche de motif dâun rĂ©pertoire/chemin, numĂ©ro de version dans plusieurs parties, numĂ©ro de version modifiable. Les versions suivantes ont introduit la modification des liens.
Si vous ĂȘtes en train de vous mettre Ă niveau depuis la version 2, lâincompatibilitĂ© principale est lorsquâil existe plusieurs groupes dans la partie des motifs. Alors que seul le premier Ă©tait utilisĂ© dans la version 2, ils le seront tous dans la version 3. Pour Ă©viter ce comportement, modifiez les groupes non liĂ©s au numĂ©ro de version en (?: ... ) au lieu dâun groupe ordinaire ( ... ) .
|
âą |
uscan invoque le script personnalisé comme ceci : script --upstream-version version ../ spkg _ version .orig.tar.gz . |
||
|
âą |
uscan invoque uupdate standard comme ceci : " uupdate --no-symlink --upstream-version version ../ spkg _ version .orig.tar.gz ". |
Version 4
devscripts version 2.15.10 : la premiÚre incarnation des fichiers watch prenant en charge les archives amont multiples.
La syntaxe du fichier de veille est assouplie pour permettre plus dâespaces de lisibilitĂ©.
Si vous avez un script personnalisé à la place de uupdate , vous pouvez aussi rencontrer des problÚmes lors de la mise à jour à partir de la version 3.
|
âą |
uscan invoque le script personnalisé comme ceci : " script --upstream-version version ". |
||
|
âą |
uscan invoque uupdate standard comme ceci : " uupdate --find --upstream-version version ". |
Les restrictions pour --dehs sont levĂ©es en redirigeant les autres sorties sur la sortie dâerreur standard lorsque elle est active.
VOIR AUSSI
dpkg (1), mk-origtargz (1), perlre (1), uupdate (1), devscripts.conf (5)
AUTEUR
La version initiale de uscan a Ă©tĂ© Ă©crite par Christoph Lameter <clameter@debian.org>. Des amĂ©liorations significatives, dâautres modifications et des corrections de bogues ont Ă©tĂ© apportĂ©es par Julian Gilbey <jdg@debian.org>. La prise en charge de HTTP a Ă©tĂ© ajoutĂ© par Piotr Roszatycki <dexter@debian.org>. Le programme a Ă©tĂ© réécrit en Perl par Julian Gilbey. Xavier Guimard lâa convertit en Perl orientĂ©-objet en utilisant Moo.
TRADUCTION
Cyril Brulebois < cyril.brulebois@enst-bretagne.fr >, 2006
Thomas Huriaux < thomas.huriaux@gmail.com >, 2006
David Prévot < david@tilapin.org >, 2010-2013
Xavier Guimard < yadd@debian.org >, 2018-2024