Provided by: devscripts_2.25.19ubuntu2_all 

BEZEICHNUNG
uscan - durchsucht/beobachtet Quellen der Ursprungsautoren nach neuen Veröffentlichungen der Software
ÜBERSICHT
uscan [Optionen] [Pfad]
BESCHREIBUNG
For basic usage, uscan is executed without any arguments from the root of the Debianized source tree
where you see the debian/ directory, or a directory containing multiple source trees.
Unless --watchfile is given, uscan looks recursively for valid source trees starting from the current
directory (see the below section "Directory name checking" for details).
For each valid source tree found, typically the following happens:
• uscan liest den ersten Eintrag in debian/changelog, um den Namen des Quellpakets <Quellpaket> und die
neueste Version der Ursprungsautoren zu bestimmen.
• uscan verarbeitet die Watch-Zeilen debian/watch von oben nach unten in einem einzigen Durchlauf.
• uscan lädt eine Web-Seite von der in debian/watch angegebenen URL herunter.
• uscan extrahiert Hrefs, die auf Tarbälle der Ursprungsautoren von der durch Suchmuster in
debian/watch angegebenen Web-Seite zeigen.
• uscan lädt den Tarball der Ursprungsautoren mit der höchsten Version, die neuer ist, als die
letzte Version der Ursprungsautoren, herunter.
• uscan speichert den heruntergeladenen Tarball ins übergeordnete ../ Verzeichnis:
../<Ursprungsautorenpaket>-<neueste-Ursprungsautorenversion>.tar.gz
• uscan ruft mk-origtargz auf, um den Quell-Tarball zu erstellen:
../<Quellpaket>_<Originalversion>.orig.tar.gz
• Bei einem Paket aus mehreren Tarbällen der Ursprungsautoren (MUT) wird der untergeordnete
Tarball der Ursprungsautoren stattdessen
../<Quellpaket>_<Originalversion>.orig-<Komponente>.tar.gz genannt.
• Dies wird wiederholt, bis alle Zeilen in debian/watch verarbeitet wurden.
• uscan ruft uupdate auf, um den an Debian angepassten Quellverzeichnisbaum zu erstellen:
../<Quellpaket>-<Originalversion>/*
Bitte beachten Sie Folgendes:
• For simplicity, the compression method used in examples is gzip with .gz suffix. Other methods such
as xz, bzip2, and lzma with corresponding xz, bz2 and lzma suffixes may also be used.
• Since version 4 of debian/watch, uscan enables handling of multiple upstream tarball (MUT) packages
but this is a rare case for Debian packaging. For a single upstream tarball package, there is only
one watch line and no ../<spkg>_<oversion>.orig-<component>.tar.gz.
• uscan erzeugt mit der Option --verbose einen für Menschen lesbaren Bericht über die Ausführung von
uscan.
• uscan erzeugt mit der Option --debug einen für Menschen lesbaren Bericht über die Ausführung von
uscan einschließlich der Status interner Variablen.
• uscan with the --extra-debug option produces a human readable report of uscan's execution including
internal variable states and remote content during "search" step.
• uscan erzeugt mit der Option --dehs einen Bericht über den Paketstatus der Ursprungsautoren im XML-
Format für andere Programme, wie das Debian External Health System.
• Der vorrangige Zweck von uscan ist es, festzustellen, ob die neueste Version des Tarballs der
Ursprungsautoren verwendet wird oder nicht und den neuesten Tarball der Ursprungsautoren
herunterzuladen. Die Ordnung der Versionen wird durch dpkg --compare-versions festgelegt.
• uscan beschränkt mit der Option --safe seine Funktionalität auf seinen vorrangigen Zweck. Sowohl das
erneute Packen heruntergeladener Dateien als auch das Aktualisieren des Quellverzeichnisbaums werden
übersprungen, um die Ausführung unsicherer Skripte zu vermeiden. Dies ändert außerdem die
Voreinstellung auf --no-download und --skip-signature.
FORMAT DER WATCH-DATEI
The current debian/watch format is described in debian-watch(5) manpage. Old formats (version 1 to 4) are
described in debian-watch-4(5) manpage.
BEISPIELE FÜR COPYRIGHT-DATEIEN
Es folgt ein Beispiel für die Datei debian/copyright die ein automatisches erneutes Packen des Tarballs
der Ursprungsautoren in <Quellpaket>_<Originalversion>.orig.tar.gz anstößt (In debian/copyright sind die
Absätze Files-Excluded und Files-Excluded-Komponente ein Teil des ersten Abschnitts und dort ist eine
leere Zeile vor den folgenden Abschnitten, die Files und andere Absätze enthalten.):
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: ...
...
Hier ein weiteres Beispiel für die debian/copyright-Datei, die ein automatisches erneutes Packen der
Tarbälle mit mehreren Paketen (MUT) der Ursprungsautoren in <Quellpaket>_<Originalversion>.orig.tar.gz
und <Quellpaket>_<Originalversion>.orig-bar.tar.gz anstößt.
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: ...
...
The debian/copyright file may also contain Files-Included and Files-Included-component stanzas which
include files that were previously excluded. This is useful to exclude most but not all files in a
directory:
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files-Excluded: vendor-dir
Files-Included:
vendor-dir/directory/to/keep
vendor-dir/*/file-to-keep
Files: *
Copyright: ...
...
Siehe mk-origtargz>(1).
BEISPIELE FÜR SCHLÜSSELBUNDDATEIEN
Nehmen wir einmal an, dass »Uscan-Testschlüssel (kein Geheimnis) <none@debian.org> der Ursprungsautoren
Pakete mit einem geheimen OpenPGP-Schlüssel signiert und den zugehörigen öffentlichen OpenPGP-Schlüssel
veröffentlicht. Dieser öffentliche OpenPGP-Schlüssel kann mittels der hexadezimalen Form auf drei Arten
identifiziert werden.
• Der Fingerabdruck als die 20 Byte Daten, die vom öffentlichen OpenPGP-Schlüssel berechnet wurden.
Z.B.»CF21 8F0E 7EAB F584 B7E2 0402 C77E 2D68 7254 3FAF«
• Die lange Schlüsselkennung als die letzten acht Byte des Fingerabdrucks. Z.B. »C77E2D6872543FAF«
• Die kurze Schlüsselkennung als die letzten vier Byte des Fingerabdrucks. Z.B. »72543FAF«
In Anbetracht, dass es Kollisionsangriffe auf die kurze Schlüsselkennung gibt, wird empfohlen, die lange
Schlüsselkennung zum Empfang von Schlüsseln des öffentlichen Schlüsselservers zu verwenden. Sie müssen
den heruntergeladenen OpenPGP-Schlüssel mittels seines vollständigen und Ihnen bereits
bekanntenFingerabdruckwerts prüfen, um festzustellen, ob es der vertrauenswürdige ist.
The armored keyring file debian/upstream/signing-key.asc can be created by using the gpg command as
follows.
$ 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 path/to/<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
Die binären Schlüsselbunddateien debian/upstream/signing-key.pgp und debian/upstream-signing-key.pgp
werden immer noch unterstützt, sind jedoch missbilligt.
Falls eine Gruppe von Entwicklern das Paket signiert, müssen Sie die Fingerabdrücke von ihnen allen im
Argument für gpg --export … aufführen, damit der Schlüsselbund alle ihre OpenPGP-Schlüssel enthält.
Manchmal fragen Sie sich vielleicht, wer die Signaturdatei erstellt hat. Sie können die öffentliche
Schlüsselkennung erhalten, um die abgetrennte Signaturdatei foo-2.0.tar.gz.asc zu erstellen, indem Sie
gpg wie folgt ausführen:
$ gpg -vv foo-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 `foo-2.0.tar.gz'
gpg: Signature made Sun 18 Oct 2015 11:11:09 PM JST using RSA key ID 72543FAF
...
BEFEHLZEILENOPTIONEN
Für die einfache Benutzung benötigt uscan diese Optionen nicht.
--conffile, --conf-file
Standard-Konfigurationsdateien hinzufügen oder ersetzen ("/etc/devscripts.conf" und "~/.devscripts").
Dies kann nur als erste auf der Befehlszeile angegebene Option benutzt werden.
replace:
uscan --conf-file test.conf --verbose
add:
uscan --conf-file +test.conf --verbose
If one --conf-file has no "+", default configuration files are ignored.
--no-conf, --noconf
liest keine Konfigurationsdateien. Dies kann nur als erste auf der Befehlszeile angegebene Option
benutzt werden.
--no-verbose
gibt keine detaillierten Informationen aus. (Voreinstellung)
--verbose, -v
zeigt detaillierte Informationen an.
--debug, -vv
Report verbose information and some internal state values.
--extra-debug, -vvv
berichtet detaillierte Informationen einschließlich heruntergeladener Webseiten als verarbeitet zur
Fehlersuche auf die Standardfehlerausgabe.
--dehs
sendet Ausgaben im DEHS-Stil (XML-Typ) an die Standardausgabe, während alle anderen Ausgaben von
Uscan an die Standardfehlerausgabe gesandt werden.
--no-dehs
verwendet nur das traditionelle Uscan-Ausgabeformat.(Voreinstellung)
--download, -d
lädt die neue Veröffentlichung der Ursprungsautoren herunter. (Voreinstellung)
--force-download, -dd
lädt die neue Veröffentlichung der Ursprungsautoren sogar dann herunter, wenn sie aktuell ist (wird
jedoch nicht die lokale Datei überschreiben).
--overwrite-download, -ddd
lädt die neue Veröffentlichung der Ursprungsautoren sogar dann herunter, wenn sie aktuell ist (kann
die lokale Datei überschreiben).
--no-download, --nodownload
lädt die Informationen nicht herunter und meldet sie nicht.
Vorher heruntergeladene Tarbälle können verwendet werden.
ändert die Voreinstellung in --skip-signature.
--signature
lädt die Signatur herunter. (Voreinstellung)
--no-signature
lädt die Signatur nicht herunter, prüft jedoch, ob sie bereits heruntergeladen wurde.
--skip-signature
belästigt weder mit dem Herunterladen noch mit dem Prüfen der Signatur.
--safe, --report
vermeidet die Ausführung unsicherer Skripte, indem sowohl das erneute Packen des heruntergeladenen
Pakets als auch das Aktualisieren des neuen Quellcodeverzeichnisbaums übersprungen wird.
ändert die Voreinstellung in --no-download und --skip-signature.
Wenn uscan mit dem Ziel ausgeführt wird, den Status des Pakets der Ursprungsautoren in eine
sicherheitsbewusste Umgebung aufzunehmen, stellen Sie sicher, dass Sie diese Option verwenden.
--report-status
Dies entspricht dem Setzen der Option »--verbose --safe«
--download-version Version
gibt die Version an, zu der die Veröffentlichung der Ursprungsautoren passen muss, um anstelle der
Veröffentlichung mit der höchsten Versionsnummer berücksichtigt zu werden (eine bestmöglich erfüllte
Funktionalität).
--download-debversion version
gibt die Debian-Paketversion an, um die entsprechende Veröffentlichungsversion der Ursprungsautoren
herunterzuladen. Die Regeln dversionmangle und uversionmangle werden berücksichtigt (eine bestmöglich
erfüllte Funktionalität).
--download-current-version
lädt die aktuelle paketierte Version herunter (eine bestmöglich erfüllte Funktionalität).
--check-dirname-level N
Die Erklärung dieser Option finden Sie im nachfolgenden Abschnitt Prüfung von Verzeichnisnamen.
--check-dirname-regex regulärer_Ausdruck
Die Erklärung dieser Option finden Sie im nachfolgenden Abschnitt Prüfung von Verzeichnisnamen.
--destdir Pfad Normalerweise ändert uscan sein internes aktuelles Verzeichnis auf das Quellverzeichnis
des Pakets, in dem debian/ liegt. Dann wird das Zielverzeichnis zum Herunterladen des Tarballs und
anderer Dateien auf das übergeordnete Verzeichnis ../ dieses internen aktuellen Verzeichnisses gesetzt.
Dieses Standardzielverzeichnis kann durch Setzen der Option --destdir auf einen bestimmten Pfad außer
Kraft gesetzt werden. Falls dieser Pfad relativ ist, wird das Zielverzeichnis relativ zum internen
aktuellen Verzeichnis bestimmt, in dem uscan ausgeführt wird. Falls dieser Pfad absolut ist, wird das
Zielverzeichnis ungeachtet des internen aktuellen Verzeichnis, in dem uscan ausgeführt wird, auf Pfad
gesetzt.
The above is true not only for the simple uscan run in the single source tree but also for the
advanced scanning uscan run with subdirectories holding multiple source trees.
Eine Ausnahme liegt vor, wenn --watchfile und --package zusammen benutzt werden. In diesem Fall
werden das interne aktuelle Ausführungsverzeichnis von uscan und das Standardzielverzeichnis auf das
aktuelle Verzeichnis ., von dem uscan gestartet wird, gesetzt. Das Standardzielverzeichnis kann auch
hier durch Setzen der Option --destdir außer Kraft gesetzt werden.
--package Paket
gibt den Namen des zu prüfenden Pakets an, anstatt debian/changelog zu untersuchen; dies erfordert
die Optionen --upstream-version (es sei denn, in der Datei watch wurde eine Version angegeben) sowie
--watchfile. Zudem wird kein Verzeichnis durchsucht und es wird nichts heruntergeladen. Diese Option
setzt automatisch --no-download and --skip-signature. Sie ist wahrscheinlich in Verbindung mit dem
DEHS-System (und --dehs) an nützlichsten.
--upstream-version Version_der_Ursprungsautoren
gibt die aktuelle Version der Ursprungsautoren an, statt die debian/watch- oder
debian/changelog-Datei zu untersuchen, um sie zu bestimmen. Dies wird ignoriert, falls ein
Verzeichnis-Scan durchgeführt und mehr als eine debian/watch-Datei gefunden wird.
--vcs-export-uncompressed
Disable compression of tarballs exported from a version control system (Git or Subversion). This
takes more space, but saves time if mk-origtargz must repack the tarball to exclude files. It forces
repacking of all exported tarballs.
--watchfile watch-Datei
gibt die Watch-Datei an, statt eine Verzeichnisdurchsuchung durchzuführen, um sie zu bestimmen. Falls
diese Option ohne --package benutzt wird, muss uscan aus dem Debian-Paketquellenverzeichnisbaum
aufgerufen werden (so dass debian/changelog einfach beim Hochlaufen des Verzeichnisbaums gefunden
werden kann).
Eine Ausnahme liegt vor, wenn --watchfile und --package zusammen benutzt werden. uscan kann von
überall aufgerufen werden und das interne Ausführungsverzeichnis von uscan sowie das
Standardzielverzeichnis werden auf das aktuelle Verzeichnis . gesetzt, von wo uscan gestartet wird.
Weitere Einzelheiten erfahren Sie in der Erläuterung von --destdir.
--bare
deaktiviert alle Site-spezifischen Codes für Sonderfälle, die URL-Weiterleitungen und Änderungen des
Seiteninhalts durchführen.
--http-header
Add specified header in HTTP requests for matching url. This option can be used more than one time,
values must be in the form "baseUrl@Name=value. Example:
uscan --http-header https://example.org@My-Token=qwertyuiop
Security:
The given baseUrl must exactly match the base url before '/'. Examples:
| --http-header value | Good for | Never used |
+------------------------------------+-----------------------------+------------+
| 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 |
It is strongly recommended to not use this feature to pass a secret token over unciphered connection
(http://)
You can use "USCAN_HTTP_HEADER" variable (in "~/.devscripts") to hide secret token from scripts
--no-exclusion
schließt Dateien, die in debian/copyright im Feld Files-Excluded erwähnt wurden, nicht automatisch
aus.
--no-symlink
benennt den Original-Tarball weder um, noch wird er neu gepackt.
--timeout N
setzt die Zeitüberschreitung auf N Sekunden (Voreinstellung 20 Sekunden).
--user-agent, --useragent
setzt die vorgegebene User-Agent-Kopfzeile außer Kraft.
--help
gibt eine kurze Gebrauchsinformation.
--version
zeigt Versionsinformationen.
uscan akzeptiert außerdem die folgenden Optionen und leitet sie an mk-origtargz weiter:
--symlink
erstellt symbolische orig.tar.gz-Verweise (mit passender Endung) auf die heruntergeladenen Dateien.
(Dies ist das Standardverhalten.)
--copy
kopiert die heruntergeladenen Dateien, statt, wie oben beschrieben, symbolische Verweise darauf zu
erstellen.
--rename
benennt die heruntergeladenen Dateien um, statt, wie oben beschrieben, symbolische Verweise darauf zu
erstellen.
--repack
After having downloaded an lzma tar, xz tar, bzip tar, gz tar, lz tar, zip, jar, xpi, zstd archive,
repack it to the specified compression (see --compression).
The unzip package must be installed in order to repack zip, jar, and xpi archives, the xz-utils
package must be installed to repack lzma or xz tar archives, zstd must be installed to repack zstd
archives, and lzip must be installed to repack lz tar archives.
--compression [ gzip | bzip2 | lzma | xz ]
Falls die Quellen der Originalautoren neu gepackt wurden (entweder weil die Option --repack angegeben
wurde oder debian/copyright das Feld Files-Excluded enthält), ist es möglich, die
Komprimierungsmethode über diesen Parameter zu steuern. Voreinstellung ist für normale Tarbälle gzip
und xz für Tarbälle, die direkt aus dem Git-Depot erstellt werden.
--copyright-file Copyright-Datei
schließt Dateien aus, die in Files-Excluded in der angegebenen Copyright-Datei erwähnt werden. Dies
ist nützlich, wenn uscan nicht innerhalb eines Quellpaketverzeichnisses ausgeführt wird.
DEVSCRIPT-KONFIGURATIONSVARIABLEN
Für den einfachen Gebrauch benötigt uscan das Setzen dieser Konfigurationsvariablen nicht.
Die beiden Konfigurationsdateien /etc/devscripts.conf und ~/.devscripts werden durch eine Shell in dieser
Reihenfolge eingelesen, um Konfigurationsvariablen zu setzen. Diese können durch Befehlszeilenoptionen
außer Kraft gesetzt werden. Zu diesem Zweck werden Umgebungsvariablen ignoriert. Falls die erste
angegebene Befehlszeilenoption --noconf ist, werden diese Dateien nicht gelesen. Die derzeit bekannten
Variablen sind:
USCAN_DOWNLOAD
nur Herunterladen oder melden:
no: entspricht --no-download, neuere Dateien der Ursprungsautoren werden nicht heruntergeladen.
yes: entspricht --download, neuere Dateien der Ursprungsautoren werden heruntergeladen. Dies ist das
Standardverhalten.
Siehe auch --force-download und --overwrite-download.
USCAN_SAFE
Falls dies auf yes gesetzt ist, verhindert uscan die Ausführung unsicherer Skripte, indem das erneute
Packen heruntergeladener Pakete als auch das Aktualisieren des Quellverzeichnisbaums übersprungen
werden. Dies entspricht den --safe-Optionen. Außerdem setzt dies die Voreinstellung auf --no-download
und --skip-signature.
USCAN_TIMEOUT
Falls dies auf eine Zahl N gesetzt ist, wird die Zeitüberschreitung auf N Sekunden eingestellt. Dies
entspricht der Option --timeout.
USCAN_SYMLINK
Falls dies auf »no« gesetzt ist, wird kein symbolischer Verweis für
Paket_Version.orig.tar.{gz|bz2|lzma|xz} erstellt (entspricht der Option --no-symlink). Falls es auf
yes oder symlink gesetzt ist, dann werden symbolische Verweise erstellt. Falls es auf rename gesetzt
ist, werden die Dateien umbenannt (entspricht der Option --rename).
USCAN_DEHS_OUTPUT
Falls dies auf yes gesetzt ist, wird eine Ausgabe im DEHS-Stil verwendet. Dies entspricht der Option
--dehs.
USCAN_VERBOSE
Falls dies auf yes gesetzt ist, wird eine detaillierte Ausgabe erzeugt. Dies entspricht der Option
--verbose.
USCAN_USER_AGENT
Falls gesetzt, wird die angegebene User-Agent-Zeichenkette anstelle der vorgegebenen benutzt. Dies
entspricht der Option --user-agent.
USCAN_DESTDIR
Falls gesetzt, werden heruntergeladene Dateien in diesem Verzeichnis abgelegt. Dies entspricht der
Option --destdir.
USCAN_REPACK
If this is set to yes, then after having downloaded a bzip tar, lzma tar, xz tar, zip or zstd
archive, uscan will repack it to the specified compression (see --compression). This is equivalent to
the --repack option.
USCAN_EXCLUSION
Falls dies auf »no« gesetzt ist, werden im Feld Files-Excluded von debian/copyright erwähnte Dateien
ignoriert und es wird nicht versucht, Dateien auszuschließen. Dies entspricht der Option
--no-exclusion.
USCAN_HTTP_HEADER
If set, the specified http header will be used if URL match. This is equivalent to --http-header
option.
USCAN_VCS_EXPORT_UNCOMPRESSED
If this is set to yes, tarballs exported from a version control system will not be compressed. This
is equivalent to the --vcs-export-uncompressed option.
EXIT-STATUS
Der Exit-Status gibt einige Hinweise, ob eine neuere Version gefunden wurde oder nicht; es wird geraten,
die Ausgabe zu lesen, um genau zu bestimmen, was geschehen ist und ob irgendwelche Warnungen zu beachten
sind.
0 Es wurde entweder --help oder --version benutzt oder es wurde für eine untersuchte watch-Datei eine
neuere Version der Ursprungsautoren gefunden.
1 Es wurde für keine der untersuchten watch-Dateien eine neuere Version der Ursprungsautoren gefunden.
FORTGESCHRITTENE FUNKTIONALITÄTEN
uscan hat viele weitere verbesserte Funktionalitäten, die im obigen Abschnitt der Einfachheit halber
übersprungen wurden. Schauen wir uns ihre Glanzlicher an.
uscan kann mit Pfad als Argument ausgeführt werden, um das Startverzeichnis der Suche vom aktuellen
Verzeichnis auf Pfad zu ändern.
Falls Sie nicht genau wissen, was im Hintergrund geschieht, aktivieren Sie bitte die Option --verbose.
Falls dies nicht ausreicht, aktivieren Sie die Option --debug, um alle internen Aktivitäten zu sehen.
Weitere Variationen finden Sie unter BEFEHLZEILENOPTIONEN und DEVSCRIPT-KONFIGURATIONSVARIABLEN.
Benutzerdefiniertes Skript
Der optionale Parameter Skript in debian/watch bedeutet, dass Skript mit Optionen nach der Verarbeitung
dieser Zeile ausgeführt wird, falls angegeben.
Wie uscan das benutzerdefinierte Skript aufruft, finden Sie unter "CHRONIK UND UPGRADES DURCHFÜHREN".
Um die Kompatibilität mit anderen Werkzeugen wie git-buildpackage zu wahren, ist es vermutlich keine gute
Idee, benutzerdefinierte Skripte mit zufälligem Verhalten zu erstellen. Im Allgemeinen ist uupdate die
beste Wahl für das nichtnative Paket und benutzerdefinierte Skripte, falls sie erstellt wurden, sollten
sich wie uupdate verhalten. Einen möglichen Anwendungsfall finden Sie beispielsweise unter
<http://bugs.debian.org/748474>.
URL-Umleitung
Einige populären Websites haben ihre Seitenstruktur geändert, was Wartungsprobleme mit der Watch-Datei
verursachte. Es gibt einige Weiterleitungsdienste, die erstellt wurden, um die Wartung der Watch-Datei zu
erleichtern. Derzeit leitet uscan URL-Anfragen automatisch an die folgenden URLs weiter, um diese
Situation zu bewältigen.
• <http://sf.net>
• <http://pypi.python.org>
Prüfung von Verzeichnisnamen
Ähnlich wie viele andere Skripte im Paket devscripts, erkundet uscan die abgefragten Verzeichnisbäume
nach debian/changelog- und debian/watch-Dateien. Als eine Schutzmaßnahme gegen verirrte Dateien, die
potenziell Probleme bereiten und um die Leistung zu steigern, wird es den Namen des übergeordneten
Verzeichnisses untersuchen, sobald es die debian/changelog-Datei findet, und prüfen, ob der
Verzeichnisname dem Paketnamen entspricht. Es wird nur versuchen, neuere Versionen des Pakets
herunterzuladen und dann jede angefragte Aktion durchführen, falls der Verzeichnisname zum Paketnamen
passt. Wie dies genau geschieht, wird durch die beiden Konfigurationsdateivariablen
DEVSCRIPTS_CHECK_DIRNAME_LEVEL und DEVSCRIPTS_CHECK_DIRNAME_REGEX sowie ihren entsprechenden
Befehlszeilenoptionen --check-dirname-level und --check-dirname-regex geregelt.
DEVSCRIPTS_CHECK_DIRNAME_LEVEL kann die folgenden Werte annehmen:
0 prüft den Verzeichnisnamen nie.
1 prüft nur den Verzeichnisnamen, falls bei der Suche nach debian/changelog das Verzeichnis geändert
werden muss, das heißt, das Verzeichnis, das debian/changelog enthält, nicht das Verzeichnis ist, aus
dem uscan aufgerufen wurde. Dies ist das Standardverhalten.
2 prüft den Verzeichnisnamen immer.
Der Verzeichnisname wird geprüft, indem getestet wird, ob der aktuelle Verzeichnisname (wie er durch
pwd(1) bestimmt wurde) zum regulären Ausdruck passt, der durch die Konfigurationsdateioption
DEVSCRIPTS_CHECK_DIRNAME_REGEX oder die Befehlszeilenoption --check-dirname-regex regulärer_Ausdruck
angegeben wurde. Hierbei ist regulärer_Ausdruck ein regulärer Perl-Ausdruck (siehe perlre(3perl)), der an
den Anfang und das Ende verankert wird. Falls regulärer_Ausdruck ein / enthält, muss er auf den
vollständigen Verzeichnispfad passen. Falls nicht, dann muss er auf den vollständigen Verzeichnisnamen
passen. Falls regulärer_Ausdruck die Zeichenkette Paket beinhaltet, wird dies durch den Namen des
Quellpakets ersetzt, wie er aus debian/changelog bestimmt wird. Der vorgegebene Wert für den
regulären_Ausdruck ist: Paket(-.+)?, daher entspricht er Verzeichnisnamen wie Paket und Paket-Version.
CHRONIK UND UPGRADES DURCHFÜHREN
Dieser Abschnitt beschreibt kurz die rückwärtsinkompatiblen watch-Dateifunktionalitäten, die in jeder
watch-Dateiversion hinzugefügt wurden, und die erste Version des devscripts-Pakets, das sie verstand.
Vorversion 2
Zu jener Zeit war die watch-Dateisyntax signifikant anders. Verwenden Sie sie nicht. Falls Sie ein
Upgrade von einer watch-Datei einer Version vor 2 durchführen, wird Ihnen empfohlen, diese
Handbuchseite zu lesen und von Grund auf neu zu beginnen.
Version 2
devscripts version 2.6.90: The first incarnation of the current style of watch files. This version is
also deprecated and will be rejected after the Debian 11 release.
Version 3
devscripts-Version 2.8.12 führte das Folgende ein: korrekte Handhabung von Sonderzeichen regulärer
Ausdrücke im Pfadteil, Verzeichnis-/Pfadmusterabgleich, Versionsnummern in mehreren Teilen,
Versionsnummerverarbeitung. Neuere Versionen haben außerden URL-Verarbeitung eingeführt.
Falls Sie ein Upgrade von Version 2 durchführen, besteht die Hauptinkomatibilität, wenn Sie mehrere
Gruppen im Musterteil haben; während nur die erste in Version 2 benutzt würde, werden sie alle in
Version 3 verwendet. Um dieses Verhalten zu vermeiden, ändern Sie die Nichtversionsnummergruppen so,
dass sie (?: … )- anstelle von einfachen ( … )-Gruppen sind.
• uscan ruft das benutzerdefinierte Skript als »Skript --upstream-version Version
../Quellpaket_Version.orig.tar.gz« auf.
• uscan ruft das Standard-uupdate als »uupdate --no-symlink --upstream-version Version
../Quellpaket_Version.orig.tar.gz auf.
Version 4
devscripts-Version 2.15.10: die erste Verkörperung der watch-Datei, die mehrere Tarbälle der
Ursprungsautoren unterstützt.
Die Syntax der Watch-Datei wurde gelockert, um zur Lesbarkeit den Umgang mit mehr Leerräumen zu
erlauben.
Falls Sie ein benutzerdefiniertes Skript anstelle von uupdate haben, stoßen Sie möglicherweise
ebenfalls beim Aktualisieren von Version 3 auf Probleme.
• uscan ruft das benutzerdefinierte Skript als »Skript --upstream-version Version« auf.
• uscan ruft das Standard-uupdate als »uupdate --find --upstream-version Version« auf.
Die Beschränkung für --dehs wird aufgehoben, indem andere Ausgaben auf die Standardfehlerausgabe
umgeleitet werden, wenn sie aktiviert ist.
SIEHE AUCH
dpkg(1), mk-origtargz(1), perlre(1), uupdate(1), devscripts.conf(5)
AUTOR
Die Originalversion wurde von Christoph Lameter <clameter@debian.org> geschrieben. Bedeutende
Verbesserungen, Änderungen und Fehlerbehebungen wurden von Julian Gilbey <jdg@debian.org> vorgenommen.
Piotr Roszatycki <dexter@debian.org> fügte HTTP-Unterstützung hinzu. Das Programm wurde neu in Perl von
Julian Gilbey geschrieben. Xavier Guimard hat es mittels Moo in objektorientiertes Perl umgewandelt.
Debian-Hilfswerkzeuge 2025-09-02 USCAN.DE(1)