BEZEICHNUNG
debc - Inhalt eines generierten Debian-Pakets betrachten
ÜBERSICHT
debc [Optionen] [Changes-Datei] [Paket …]
BESCHREIBUNG
debc findet die aktuelle Version eines Pakets heraus und zeigt Informationen über die .deb- und .udeb-Dateien an, die im aktuellen Bauprozess generiert wurden. Falls auf der Befehlszeile eine .changes-Datei angegeben wurde, muss der Dateiname auf .changes enden, da das Programm sie auf diese Art von Paketnamen unterscheidet. Falls nicht, muss debc aus dem Quellcodeverzeichnisbaum aufgerufen werden. In diesem Fall wird es nach der .changes-Datei Ausschau halten, die der aktuellen Paketversion entspricht (durch Bestimmen des Namens und der Versionsnummer aus dem Changelog und der Architektur auf der gleichen Art, die dpkg-buildpackage(1) verwendet). Dann führt es dpkg-deb -I und dpkg-deb -c auf jedem .deb- und .udeb-Archiv aus, das in der .changes-Datei aufgeführt ist, um Informationen über die .deb- und .udeb-Archive anzuzeigen. Es stellt jeder .deb- und .udeb-Datei den Dateinamen voran. Es geht davon aus, dass all die .deb-/.udeb-Archive im gleichen Verzeichnis wie die .changes-Datei liegen. Es ist nützlich, um sicherzustellen, dass die erwarteten Dateien im Debian-Paket gelandet sind.
Falls ein Liste von Paketen auf der Befehlszeile angegeben wurde, werden nur jene Debs oder Udebs verarbeitet, deren Namen in dieser Paketliste stehen.
Prüfung von Verzeichnisnamen
Ebenso wie mehrere andere Skripte im Paket devscripts wird debc das Verzeichnis emporsteigen, bis es eine debian/changelog-Datei findet. Als eine Schutzmaßnahme gegen verstreute Dateien, die möglicherweise Probleme verursachen, wird es den Namen des übergeordneten Verzeichnisses untersuchen, sobald es die debian/changelog-Datei findet und prüfen, ob dieser Verzeichnisname dem Paketnamen entspricht. Wie dies genau geschieht wird über zwei Konfigurationsdateivariablen geregelt, DEVSCRIPTS_CHECK_DIRNAME_LEVEL und DEVSCRIPTS_CHECK_DIRNAME_REGEX sowie ihre entsprechenden Befehlszeilenoptionen --check-dirname-level und --check-dirname-regex.
DEVSCRIPTS_CHECK_DIRNAME_LEVEL kann die folgenden Werte annehmen:
0 |
prüft den Verzeichnisnamen nie. | ||
1 |
prüft den Verzeichnisnamen nur, falls in der Suche nach debian/changelog das Verzeichnis gewechselt werden muss. 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.
OPTIONEN
-aDebian-Architektur, -tGNU-Systemtyp
Eine Beschreibung dieser Optionen finden Sie unter dpkg-architecture(1). Sie beeinflussen die Suche nach der .changes-Datei. Sie werden bereitgestellt, um das Verhalten von dpkg-buildpackage nachzumachen, wenn der Name der .changes-Datei festgestellt wird.
--debs-dir Verzeichnis
sucht nach .changes-, .deb- und .udeb-Dateien in Verzeichnis statt im übergeordneten Verzeichnis des Quellverzeichnisses. Dies sollte entweder ein absoluter Pfad oder relativ zur Wurzel des Quellverzeichnisses sein.
--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.
--list-changes
führt den Dateinamen der .changes-Datei auf und zeigt sonst nichts an. Diese Option ist nur sinnvoll, falls eine .changes-Datei NICHT explizit auf der Befehlszeile übergeben wird. Dies kann zum Beispiel in einem Skript verwendet werden, das sich auf die .changes-Datei bezieht, ohne die Heuristik zum Finden kopieren zu müssen, die Debc bereits umsetzt.
--list-debs
listet die Dateinamen der .deb-Pakete auf, ohne ihren Inhalt anzuzeigen.
--no-conf, --noconf
keine Konfigurationsdateien lesen, Dies kann nur als erste auf der Befehlszeile angegebene Option benutzt werden.
--help, --version
zeigt Hilfenachricht beziehungsweise Versionsinformationen.
KONFIGURATIONSVARIABLEN
Die beiden
Konfigurationsdateien /etc/devscripts.conf und
~/.devscripts werden in dieser Reihenfolge
eingelesen, um Konfigurationsvariablen zu setzen.
Befehlszeilenoptionen können benutzt werden, um
Einstellungen in Konfigurationsdateien zu setzen.
Einstellungen in Umgebungsvariablen werden zu diesem Zweck
ignoriert. Die derzeit bekannten Variablen sind:
DEBRELEASE_DEBS_DIR
Dies gibt das Verzeichnis an, in dem nach den .changes-, .deb- und .udeb-Dateien gesucht werden soll und ist entweder ein absoluter Pfad oder relativ zur Wurzel des Quellverzeichnisses. Dies entspricht der Befehlszeilenoption --debs-dir. Diese Direktive könnte zum Beispiel benutzt werden, falls Sie immer pbuilder oder svn-buildpackage verwenden, um Ihre Pakete zu bauen. Beachten Sie, dass es außerdem debrelease(1) beeinflusst, daher kommt der außergewöhnliche Name der Option.
DEVSCRIPTS_CHECK_DIRNAME_LEVEL, DEVSCRIPTS_CHECK_DIRNAME_REGEX
Die Erklärung dieser Variablen finden Sie im vorhergehenden Abschnitt Prüfung von Verzeichnisnamen. Beachten Sie, dass dies paketweite Konfigurationsvariablen sind und daher alle devscripts-Skripte beeinflussen, die ihren Wert prüfen. Dies wird in ihren jeweiligen Handbuchseiten und in devscripts.conf(5) beschrieben.
SIEHE AUCH
debdiff(1), dpkg-deb(1), devscripts.conf(5)
AUTOR
Julian Gilbey <jdg [AT] debian.org>, basierend auf einem Originalskript von Christoph Lameter <clameter [AT] debian.org>.
ÜBERSETZUNG
Diese Übersetzung wurde mit dem Werkzeug po4a <URL:https://po4a.org/> durch Chris Leick c.leick [AT] 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 [AT] lists.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«.