Provided by: devscripts_2.14.1ubuntu0.1_amd64
BEZEICHNUNG
uscan - durchsucht/beobachtet Quellen der Ursprungsautoren nach neuen Veröffentlichungen der Software
ÜBERSICHT
uscan [Optionen] [Pfad-zu-Debian-Quellpaketen …]
BESCHREIBUNG
uscan durchsucht die angegebenen Verzeichnisse (oder das aktuelle Verzeichnis, falls keine angegeben wurden) und sämtliche Unterverzeichnisse nach Paketen, die eine Steuerdatei debian/watch enthalten. Parameter werden dann aus diesen Steuerdateien gelesen und FTP- oder HTTP-Sites der Ursprungsautoren werden auf neue verfügbare Aktualisierungen geprüft (indem sie mit der Versionsnummer der Ursprungsautoren verglichen werden, die wiederum aus der Datei debian/changelog im gleichen Verzeichnis geholt wird). Die neusten Aktualisierungen werden heruntergeladen (wie durch ihre Versionsnummer bestimmt) und falls in der watch-Datei angegeben, könnte ein Programm mit dem neu heruntergeladenen Quellcode ausgeführt werden. Die herkömmlichen debian/watch-Dateien können immer noch benutzt werden, aber das aktuelle Format ist sowohl einfacher als auch flexibler. Hier wird das alte Format nicht beschrieben; dessen Dokumentation finden Sie im Quellcode von Uscan.
FORMAT der debian/watch-Dateien
Im Folgenden wird vorgeführt, welche Typen von Einträgen in einer debian/watch-Datei erscheinen können. Offensichtlich würden nicht alle davon in einer solchen Datei auftauchen; üblicherweise würde sie eine Zeile für das aktuelle Paket enthalten. # Format der Versionsnummer, derzeit 3; diese Zeile ist vorgeschrieben! version=3 # Zeilen werden mit \ fortgesetzt # Dies ist das Format für eine FTP-Site: # Vollständige-Site-mit-Mustern [Version [Aktion]] ftp://ftp.tex.ac.uk/tex-archive/web/c_cpp/cweb/cweb-(.+)\.tar\.gz \ debian uupdate # Dies ist das Format einer FTP-Site mit Metazeichen regulärer Ausdrücke im # Dateinamensteil. ftp://ftp.worldforge.org/pub/worldforge/libs/Atlas-C++/transitional/Atlas-C\+\+-(.+)\.tar\.gz # Dies ist das Format für eine FTP-Site mit Verzeichnismusterabgleich ftp://ftp.nessus.org/pub/nessus/nessus-([\d\.]+)/src/nessus-core-([\d\.]+)\.tar\.gz # Dies kann benutzt werden, falls Sie die PASV-Einstellung für eine # spezielle Site außer Kraft setzen möchten. # opts=pasv ftp://…/… # Dies ist ein Format für eine HTTP-Site, das dem Format einer FTP-Site # entspricht. uscan startet mit dem Herunterladen der Homepage, die es # durch Entfernen des letzten URL-Bestandteils erhält, in diesem Fall # http://www.cpan.org/modules/by-module/Text/ http://www.cpan.org/modules/by-module/Text/Text-CSV_XS-(.+)\.tar\.gz # Dies ist ein abweichendes HTTP-Format, das die direkte Angabe der Homepage # gestattet: # Homepage Muster [Version [Aktion]] http://www.dataway.ch/~lukasl/amph/amph.html \ files/amphetamine-([\d\.]*).tar.bz2 # Dies zeigt, dass rekursives Durchsuchen von Verzeichnissen in beiden # Formen funktioniert, solange die Website Anfragen der Form # http://site/inter/mediate/dir/ handhaben kann http://tmrc.mit.edu/mirror/twisted/Twisted/(\d\.\d)/ \ Twisted-([\d\.]*)\.tar\.bz2 http://tmrc.mit.edu/mirror/twisted/Twisted/(\d\.\d)/Twisted-([\d\.]*)\.tar\.bz2 # Um bei Tarballs der Ursprungsautoren maximale Flexibilität zu erreichen, # nutzen Sie dies: http://example.com/example-(\d[\d.]*)\.(?:zip|tgz|tbz2|txz|tar\.(?:gz|bz2|xz)) # qa.debian.org führt eine Weiterleitung aus, die eine einfachere Form für # eine URL Sourceforge-basierter Projekte bietet. Das nachfolgende Format # wird automatisch umgeschrieben, um den Weiterleitungsdienst zu verwenden. http://sf.net/audacity/audacity-src-(.+)\.tar\.gz # For GitHub projects you can use the tags or releases page. Since the archive # URLs use only the version as the name, it is recommended to use a # filenamemangle to adjust the name of the downloaded file: opts="filenamemangle=s/(?:.*)?v?(\d[\d\.]*)\.tar\.gz/<project>-$1.tar.gz/" \ https://github.com/<user>/<project>/tags (?:.*/)?v?(\d[\d\.]*)\.tar\.gz # Für Google-Code-Projekte sollten Sie die Downloads-Seite wie folgt benutzen: http://code.google.com/p/<project>/downloads/list?can=1 \ .*/<project>-(\d[\d.]*)\.tar\.gz # Dies ist das Format für eine Site, die komische Versionsnummern hat; # die Klammergruppen werden mit Punkten verbunden, um eine bereinigte # Versionsnummer zu erzeugen http://www.site.com/pub/foobar/foobar_v(\d+)_(\d+)\.tar\.gz # Dies ist eine weitere Art, eine Site mit komischen Versionsnummern zu # handhaben, diesmal mittels Mangling (Anpassen von Paketnamen). (Beachten # Sie, dass mehrere Gruppen vor dem Mangling zusammengefügt werden und dass # dieses Mangling nur für die Versionsnummer des Basispfads und nicht für # die Versionsnummern aller Pfade durchgeführt wird.) opts="uversionmangle=s/^/0.0./" \ ftp://ftp.ibiblio.org/pub/Linux/ALPHA/wine/development/Wine-(.+)\.tar\.gz # Genauso kann ein Mangling des Teils der Debian-Versionsnummer der # Ursprungsautoren durchgeführt werden: opts=dversionmangle=s/\.dfsg\.\d+$// \ http://some.site.org/some/path/foobar-(.+)\.tar\.gz # Der Dateiname wird ermittelt, indem der letzte Bestandteil der URL # genommen und alles nach einem »?« entfernt wird. Falls dies nicht zu # einem brauchbaren Dateinamen führt, soll Filenamemangle verwendet werden. # Zum Beispiel könnte # <A href="http://foo.bar.org/download/?path=&download=foo-0.1.1.tar.gz"> # gehandhabt werden wie # opts=filenamemangle=s/.*=(.*)/$1/ \ # http://foo.bar.org/download/\?path=&download=foo-(.+)\.tar\.gz. # # <A href="http://foo.bar.org/download/?path=&download_version=0.1.1"> # könnte wie # opts=filenamemangle=s/.*=(.*)/foo-$1\.tar\.gz/ \ # http://foo.bar.org/download/\?path=&download_version=(.+) # gehandhabt werden. # Die Option »downloadurlmangle« kann benutzt werden, um ein Mangling der # URL der Datei durchzuführen, die heruntergeladen werden soll. Dies kann # nur mit http://-URLs benutzt werden. Dies kann nötig sein, falls der auf # der Webseite angegebene Verweis automatisch auf irgendeine Weise in einen # umgewandelt werden muss, der funktioniert, zum Beispiel: # opts=downloadurlmangle=s/prdownload/download/ \ # http://developer.berlios.de/project/showfiles.php?group_id=2051 \ # http://prdownload.berlios.de/softdevice/vdr-softdevice-(.+).tgz Kommentarzeilen können mit einem »#«-Zeichen eingeleitet werden. Zeilen können mit einem abschließenden Rückwärtsschrägstrich fortgesetzt werden. Die erste (Nicht-Kommentar-)Zeile der Datei muss mit »version=3« beginnen. Dies ermöglicht zukünftige Erweiterungen, ohne dass der Name der Datei geändert werden muss. Es gibt zwei Möglichkeiten für die Syntax einer HTTP-watch-Dateizeile und nur eine für eine FTP-Zeile. Wir beginnen mit dem üblichen (und einfacheren) Format. Nachfolgend wird das optionale erste Feld »opts=…« beschrieben und im Folgenden ignoriert. Das erste Feld gibt das vollständige Muster der URLs an, nach denen gesucht wird. Im Fall einer FTP-Site wird der Inhalt des abgefragten Verzeichnisses angefordert und dieser wird nach Dateien mit passendem Basisnamen durchsucht (alles nach dem letzten »/«). Im Falle einer HTTP-Site wird alles nach dem letzten Schrägstrich weggelassen und die so erhaltene URL heruntergeladen und nach Hrefs durchsucht (Verweise der Form <a href=…>), entweder nach dem vollständigen angegebenen URL-Muster oder nach dem absoluten Teil (alles ohne den http://Rechner.Name/-Teil) oder dem Basisnamen (nur dem Teil nach dem / am Ende). Alles bis zum Schrägstrich am Ende wird als wortgetreue URL genommen, solange in diesem Teil der URL keine Klammern (»(« und »)«) vorkommen: falls doch, wird der Verzeichnisname auf die selbe Weise abgeglichen, wie es nachfolgend für den letzten Bestandteil der URL beschrieben wird. (Beachten Sie, dass Zeichen mit Sonderbedeutung für reguläre Ausdrücke wie »+« buchstäblich betrachtet werden, außer wenn sie in einem Pfadbestandteil vorkommen, der Klammern enthält; siehe das vorhergehende Atlas-C++-Beispiel. Außerdem müssen die Klammern in jedem Pfadbestandteil paarweise vorkommen.) Das Muster (nach dem Schrägstrich am Ende) ist ein regulärer Perl-Ausdruck (Einzelheiten darüber sind unter perlre(1) zu finden). Sie müssen das Muster so streng gestalten, dass es nur auf die Software der Ursprungsautoren passt, an der Sie interessiert sind und auf nichts anderes. Außerdem wird das Muster an den Anfang und das Ende verankert, so dass es zum vollständigen Namen passen muss. (Beachten sie, dass die Href für HTTP-URLs den absoluten Pfad oder die vollständige Site und den Pfad enthalten kann und immer noch akzeptiert wird.) Das Muster muss mindestens eine Perl-Gruppe enthalten, wie im nächsten Absatz erläutert. Ist eine Liste von »Dateien« mit passendem Muster vorhanden, werden ihre Versionsnummern extrahiert, indem der Teil, der zu den Gruppen regulärer Perl-Ausdrücke passt, gekennzeichnet durch »(...)«, durch Punkte ».« zusammengesetzt wird. Das Ergebnis wird als Versionsnummer der Datei verwendet. Dann wird ein Mangling der Versionsnummer durchgeführt, falls dies von der nachfolgend beschriebenen Option »uversionmangle« benötigt wird. Am Ende werden die Dateiversionen verglichen, um diejenige mit der größten Versionsnummer zu finden, wie durch dpkg --compare-versions festgelegt. Beachten Sie, falls Sie Perl-Gruppen benötigen, die nicht in der Versionsnummer verwendet werden, dass Sie entweder »(?:...)« oder die Option »uversionmangle« verwenden, um die Unordnung zu beseitigen. Die aktuelle Version (der Ursprungsautoren) kann als zweiter Parameter in der watch-Dateizeile angegeben werden. Falls dies debian ist oder fehlt, wird die aktuelle Debian-Version (wie durch debian/changelog bestimmt) benutzt, um die aktuelle Version der Ursprungsautoren zu bestimmen. Die aktuelle Version der Ursprungsautoren kann außerdem als Befehlszeilenoption --upstream-version angegeben werden, die die Versionsnummer der Ursprungsautoren des aktuell installierten Pakets angibt (d.h. die Debian-Versionsnummer ohne Epoche und Debian-Revision). Für die Versionsnummer der Ursprungsautoren wird dann mittels der Option »dversionmangle«, falls angegeben, ein Mangling durchgeführt, wie nachfolgend beschrieben. Falls die neuste verfügbare Version neuer ist als die aktuelle Version, wird sie in das übergeordnete Verzeichnis heruntergeladen, es sei denn, die Optionen --report oder --report-status werden verwendet. Sobald die Datei heruntergeladen wurde, wird ein symbolischer Verweis zur Datei von <Paket>_<Version>.orig.tar.{gz|bz2|lzma|xz} erstellt, wie in der Hilfe für die Option --symlink beschrieben. Falls schlussendlich ein dritter Parameter (eine Aktion) in der watch-Dateizeile angegeben wurde, wird dieser als Name des Befehls genommen und der Befehl Befehl --upstream-version Version Dateiname wird ausgeführt, entweder mit der Originaldatei oder des Namens des symbolischen Verweises. Ein üblicher derartiger Befehl wäre uupdate(1). (Beachten Sie, dass sich die Aufrufsyntax geringfügig unterscheidet, wenn die watch-Datei ohne eine »version=…«-Zeile benutzt wird; der dort ausgeführte Befehl war »Befehl Dateiname Version«.) Falls der Befehl uupdate ist, wird die Option --no-symlink als erste Option an uupdate übergeben, da das angefragte Erstellen eines symbolischen Verweises bereits durch uscan erledigt wurde. Die alternative Variante der watch-Dateisyntax für HTTP-URLs ist wie folgt: Das erste Feld ist die Homepage, die heruntergeladen und dann nach Hrefs durchsucht werden soll, die dem im zweiten Feld übergebenen Muster entsprechen. (Dieses Muster wird wieder an den Anfang und das Ende verankert, so dass es der ganzen Href entsprechen muss. Falls Sie nur den Basisnamen der Href vergleichen möchten, können Sie ein Muster wie ».*/Name-(.+)\.tar\.gz« verwenden, falls Sie wissen, dass dort eine vollständige URL vorliegt oder besser immer noch: »(?:.*/)?Name-(.+)\.tar\.gz«, falls dies der Fall ist oder nicht. Beachten Sie, (?:...) zu benutzen, um einen Rückwärtsbezug zu vermeiden.) Falls irgendwelche der Hrefs auf der Homepage, die zum (verankerten) Muster passen, relative URLs sind, werden sie als relativ zur Basis-URL der Homepage betrachtet (d.h. mit allem nach dem abschließenden Schrägstrich entfernt) oder relativ zur auf der Homepage selbst mit einer als <base href="…">-Markierung angegebenen Basis-URL. Das dritte und vierte Feld sind die Felder Versionsnummer und Aktion wie vorher.
OPTIONEN JE SITE
Einer watch-Dateizeile kann »opts=Optionen« vorangestellt werden, wobei Optionen eine durch Kommas getrennte Liste von Optionen ist. Die ganze Optionen-Zeichenkette kann in doppelte Anführungszeichen eingeschlossen werden, was nötig ist, wenn Optionen irgendwelche Leerzeichen enthalten. Folgende Optionen werden erkannt: active und passive (oder pasv) Falls dies auf einer FTP-Zeile verwendet wird, setzt es die Wahl außer Kraft, ob der PASV-Modus verwendet wird oder nicht, und erzwingt die Benutzung des angegebenen Modus für diese Site. uversionmangle=Regeln Dies wird für das Mangling der Versionsnummer der Ursprungsautoren verwendet, wie sie durch die ftp://…- oder http://-Regeln wie folgt abgeglichen wird. Zuerst wird die Regel-Zeichenkette bei jedem »;« in mehrere Regeln unterteilt. Dann wird ein Mangling der Versionsnummer der Ursprungsautoren durchgeführt, indem Regel auf die Version in ähnlicher Weise wie für das Ausführen des Perl-Befehls $version =~ Regel; auf jede Regel angewandt wird. Daher könnten geeignete Regeln »s/^/0./« sein, um 0. an die Versionsnummer anzuhängen und »s/_/./g«, um Unterstriche in Punkte zu ändern. Beachten Sie, dass die Regel-Zeichenkette keine Kommas enthalten darf; dies sollte kein Problem sein. Regel kann nur die Operationen »s«, »tr« und »y« verwenden. Wenn die Operation »s« benutzt wird, sind nur die Schalter »g«, »i« und »x« verfügbar und Regel kann keine Ausdrücke enthalten, die die Möglichkeit haben, Code auszuführen (d.h. die Gebilde (?{}) und (??{}) werden nicht unterstützt. Falls die Operation »s« benutzt wird, kann die Ersetzung Rückwärtsbezüge auf Ausdrücke innerhalb von Klammern im passenden regulären Ausdruck wie »s/-alpha(\d*)/.a$1/« enthalten. Diese Rückwärtsbezüge müssen die »$1«-Syntax verwenden, da die »\1«-Syntax nicht unterstützt wird. dversionmangle=Regeln Dies wird für das Mangling der Debian-Versionsnummer des aktuell installierten Pakets auf die gleiche Art wie bei der Option uversionmangle benutzt. Daher könnte eine geeignete Regel »s/\.dfsg\.\d+$//« lauten, um eine ».dfsg.1«-Endung von der Debian-Versionsnummer zu entfernen oder Versionsnummern des Typs ».pre6« zu handhaben. Die Regeln-Zeichenkette darf wieder Kommas enthalten; dies sollte kein Problem sein. versionmangle=Regeln Dies ist eine syntaktisches Abkürzung für uversionmangle=Regeln,dversionmangle=Regeln, es wendet die selben Regeln sowohl auf die Versionsnummern der Ursprungsautoren als auch auf die von Debian an. filenamemangle=Regeln Dies wird für das Mangling des Dateinamens benutzt, unter dem die heruntergeladene Datei gespeichert wird und auf die selbe Weise ausgewertet wie die Option uversionmangle. Beispiele für die Verwendung finden sich im vorhergehenden Beispielabschnitt. downloadurlmangle=Regeln Dies wird für das Mangling der URL verwendet, die zum Herunterladen benutzt wird. Die URL wird zuerst basierend auf der heruntergeladenen Homepage und des passenden Musters berechnet, dann wird die Versionsnummer aus dieser URL bestimmt. Am Ende werden alle durch diese Option angegebenen Regeln angewandt, bevor tatsächlich versucht wird, sie herunterzuladen. Ein Beispiel für die Verwendung findet sich im vorhergehenden Beispielabschnitt. pgpsigurlmangle=Regeln If present, the supplied rules will be applied to the downloaded URL (after any downloadurlmangle rules, if present) to craft a new URL that will be used to fetch the detached OpenPGP signature file for the upstream tarball. Some common rules might be `s/$/.asc/' or `s/$/.pgp/' or `s/$/.gpg/'. This signature must be made by a key found in the keyring debian/upstream/signing-key.pgp or the armored keyring debian/upstream/signing-key.asc. If it is not valid, or not made by one of the listed keys, uscan will report an error.
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 eine 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 ihre 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. Wenn nicht, dann muss er auf den vollständigen Verzeichnisnamen passen. Falls regulärer Ausdruck die Zeichenkette »PACKAGE« beinhaltet, wird diese durch den Namen des Quellpakets ersetzt, wie er aus dem Changelog bestimmt wird. Der vorgegebene Wert für den regulären Ausdruck ist: »PACKAGE(-.+)?«, daher entspricht er Verzeichnisnamen wie PACKAGE und PACKAGE-Version.
BEISPIEL
Dieses Skript wird eine vollautomatische Aktualisierung aus den Ursprungsquellen durchführen. #!/bin/sh -e # wird aufgerufen mit »--upstream-version« <Version> <Datei> uupdate "$@" package=`dpkg-parsechangelog | sed -n 's/^Source: //p'` cd ../$package-$2 debuild Beachten Sie, dass dupload oder dput nicht automatisch aufgerufen werden, da der Betreuer Plausibilitätsprüfungen für die Software durchführen sollte, bevor sie nach Debian hochgeladen wird.
OPTIONEN
--report, --no-download berichtet nur über neue verfügbare Versionen, lädt aber nichts herunter. --report-status berichtet über den Zustand aller Pakete, sogar von denen, die aktuell sind, lädt aber nichts herunter. --download berichtet und lädt herunter. (Dies ist das Standardverhalten.) --destdir Pfad des Verzeichnisses in das heruntergeladen werden soll. Falls der angegebene Pfad nicht absolut ist, wird er entweder relativ zum aktuellen Verzeichnis oder, falls Verzeichnisauswertung aktiviert ist, zum Quellverzeichnis des Pakets sein. --force-download lädt von der Ursprungsquelle sogar dann herunter, wenn es aktuell ist (wird jedoch keine lokalen Dateien überschreiben). --pasv erzwingt bei FTP-Verbindungen den PASV-Modus. --no-pasv verwendet bei FTP-Verbindungen nicht den PASV-Modus. --timeout N setzt die Zeitüberschreitung auf N Sekunden (Vorgabe 20 Sekunden). --symlink erstellt symbolische orig.tar.gz-Verweise zu allen heruntergeladenen Dateien, falls ihre Erweiterungen .tar.gz oder .tgz sind. Dies wird außerdem für orig.tar.bz2 (für .tar.bz2, .tbz und .tbz2 der Ursprungsautoren), orig.tar.lzma (für .tar.lzma, .tlz, .tlzm und .tlzma der Ursprungsautoren) und orig.tar.xz (für .tar.xz und .txz der Ursprungsautoren) so gehandhabt. (Dies ist das Standardverhalten.) --rename benennt, wie oben beschrieben, die heruntergeladenen Dateien in ihre Debian-orig.tar.gz-, -orig.tar.bz2-, -orig.tar.lzma- oder -orig.tar.xz-Namen um, anstatt symbolische Verweise darauf zu erstellen. --repack Nachdem ein LZMA-Tar-, Xz-Tar, Bzip-Tar oder Zip-Archiv heruntergeladen wurde, wird es neu als Gzip-Tar-Archiv gepackt, das derzeit immer noch als Teil eines Debian-Quell-Pakets benötigt wird. Falls das heruntergeladene Archiv kein LZMA-Tar-, Xz-Tar, Bzip-Tar oder Zip-Archiv ist (d.h. es hat keine .tlz-, .tlzm-, .tlzma-, .tar.lzma-, .txz-, .tar.xz-, .tbz-, .tbz2-, .tar.bz2- oder .zip-Endung), wird nichts getan. Das Paket Unzip muss installiert sein, um .zip-Archive neu zu packen, das Paket xz-utils muss installiert seinum LZMA- oder Xz-Archive neu zu packen. --no-symlink erstellt nicht diese symbolischen Verweise und benennt die Dateien nicht um. --dehs benutzt für die Ausgabe ein XML-Format, wie es vom DEHS-System benötigt wird. --no-dehs verwendet das traditionelle Uscan-Ausgabeformat. (Dies ist das Standardverhalten.) --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 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 watch- oder changelog-Datei zu untersuchen, um sie zu bestimmen. Dies wird ignoriert, falls ein Verzeichnis-Scan durchgeführt und mehr als eine watch-Datei gefunden wird. --watchfile watch-Datei gibt die watch-Datei an, statt einen Verzeichnis-Scan 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). --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. --download-current-version lädt die aktuelle paketierte Version herunter. --verbose erzeugt eine detaillierte Ausgabe. --no-verbose erzeugt keine detaillierte Ausgabe. (Dies ist das Standardverhalten.) --no-exclusion schließt Dateien, die in debian/copyright im Feld Files-Excluded erwähnt wurden, nicht automatisch aus. --debug gibt die heruntergeladenen Webseiten auf der Standardausgabe (Stdout) für die Fehlersuche in Ihrer Watch-Datei aus. --check-dirname-level N Die Erklärung dieser Option finden Sie im vorhergehenden Abschnitt Prüfung von Verzeichnisnamen. --check-dirname-regex regulärer Ausdruck Die Erklärung dieser Option finden Sie im vorhergehenden Abschnitt Prüfung von Verzeichnisnamen. --user-agent, --useragent setzt die vorgegebene User-Agent-Kopfzeile außer Kraft. --no-conf, --noconf keine Konfigurationsdateien lesen, Dies kann nur als erste auf der Befehlszeile angegebene Option benutzt werden. --help gibt eine kurze Gebrauchsinformation. --version zeigt Versionsinformationen.
KONFIGURATIONSVARIABLEN
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 Falls dies auf no gesetzt ist, werden neuere Dateien der Ursprungsautoren nicht heruntergeladen; dies entspricht den Optionen --report oder --no-download. USCAN_PASV Falls dies auf yes oder no gesetzt ist, wird dies erzwingen, dass FTP-Verbindungen den PASV-Modus verwenden beziehungsweise nicht verwenden. Falls dies auf default gesetzt ist, wird Net::FTP(3) eine Auswahl treffen (basiert hauptsächlich auf der Umgebungsvariable FTP_PASSIVE). USCAN_TIMEOUT Falls dies auf eine Zahl N gesetzt ist, wird eine Zeitüberschreitung nach 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 Falls dies auf yes gesetzt ist, dann wird uscan nach dem Herunterladen ein Bzip-Tar-, LZMA-Tar, Xz-Tar- oder Zip-Archiv neu zu einem Gzip-Tar packen. Dies entspricht der Option --repack. UiSCAN_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.
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.
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 vor Version 2 durchführen, wird Ihnen empfohlen, diese Handbuchseite zu lesen und von Grund auf neu zu beginnen. Version 2 Devscripts-Version 2.6.90: die erste Verkörperung des aktuellen watch-Dateistils Version 3 Devscripts-Version 2.8.12 führte das Folgende ein: korrekte Handhabung von Sonderzeichen regulärer Ausdrücke im Pfadteil, Verzeichnis-/Pfadabgleich, Versionsnummern in mehreren Teilen, Versionsnummer-Mangling. Neuere Versionen haben außerden URL-Mangling eingeführt. Falls Sie ein Upgrade von Version 2 durchführen, besteht die Hauptinkomatibilität, wenn Sie mehrere Gruppen im Musterteil haben; während 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.
SIEHE AUCH
dpkg(1), perlre(1), uupdate(1) und 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.
ÜBERSETZUNG
Diese Übersetzung wurde mit dem Werkzeug po4a <URL:http://po4a.alioth.debian.org/> durch Chris Leick c.leick@vollbio.de im Juli 2012 erstellt und vom deutschen Debian-Übersetzer- Team korrekturgelesen. Bitte melden Sie alle Fehler in der Übersetzung an debian-l10n- german@lists.debian.org oder als Fehlerbericht an das Paket devscripts. Sie können mit dem folgenden Befehl das englische Original anzeigen »man -L C Abschnitt deutsche_Handbuchseite«.