Linux repositories inspector

dpkg-source(1) - Deutsch

1.20.0

dpkg-dev

Debian package development tools

dpkg-lang

Translations for package dpkg

dpkg

Debian package management system

BEZEICHNUNG

dpkg-source - Debian Quellpaket- (.dsc) Manipulations-Werkzeuge

\(:UBERSICHT

dpkg-source [Option …] Befehl

BESCHREIBUNG

dpkg-source packt und entpackt Debian-Quellarchive.
Keiner dieser Befehle erlaubt es, mehrere Optionen zu einer zu kombinieren, und sie erlauben es nicht, den Wert einer Option in einem separaten Argument zu speichern.

BEFEHLE

-x, --extract Dateiname.dsc [Ausgabe-Verzeichnis]
Entpackt ein Quellpaket (--extract seit Dpkg 1.17.14). Ein nicht-Options-Argument muss angegeben werden, der Name der Debian Quell-Steuer-Datei (.dsc). Optional kann ein zweites nicht-Options-Argument angegeben werden, um das Verzeichnis anzugeben, in das das Quellpaket entpackt werden soll. Dieses Verzeichnis darf dann nicht existieren. Falls kein Ausgabeverzeichnis angegeben ist, wird das Quellpaket in das Verzeichnis namens Quelle-Version unterhalb des aktuellen Arbeitsverzeichnisses entpackt.
dpkg-source wird die Namen der anderen Datei(en) aus der Steuerdatei einlesen, die das Quellpaket ergeben; es wird angenommen, dass diese im gleichen Verzeichnis wie die .dsc liegen.
Die Dateien in dem entpackten Paket werden die Rechte und Eigent\(:umer haben, die erwartet w\(:urden, falls die Dateien und Verzeichnisse einfach angelegt worden w\(:aren - Verzeichnisse und Programmdateien werden 0777 und einfache Dateien 0666, beide durch die umask der Person, die entpackt, entsprechend angepasst; falls das \(:ubergeordnete Verzeichnis setgid ist, werden dies die entpackten Verzeichnisse auch sein, und alle Dateien und Verzeichnisse werden die Gruppeneigent\(:umerschaft erben.
Falls das Quellpaket ein nicht-Standard-Format verwendet (derzeit bedeutet dies alle Formate au\(sser \(Bq1.0\(lq)) wird sein Name in debian/source/format gespeichert, so dass alle folgenden Bauversuchen des Quellpakets standardm\(:a\(ssig das gleiche Format verwenden.
-b, --build Verzeichnis [Format-abh\(:angige-Parameter]
Baut ein Quellpaket (--build seit Dpkg 1.17.14). Das erste nicht-Options-Argument wird als Name des Verzeichnisses verwandt, das den debianisierten (d.h. mit einem Unterverzeichnis \(Bqdebian\(lq und ggf. \(:Anderungen an den Originaldateien versehenen) Quellbaum enth\(:alt. Abh\(:angig vom dem zum Bau verwandten Quellpaketformat k\(:onnten zus\(:atzliche Parameter akzeptiert werden.
dpkg-source wird das Quellpaket mit dem ersten gefundenen Format aus der folgenden geordneten Liste bauen: dem mit der Befehlszeilenoption(en) --format angegebenen Format, dem in debian/source/format angegebenen Format, \(Bq1.0\(lq. Die R\(:uckfalloption \(Bq1.0\(lq ist veraltet und wird irgendwann in der Zukunft entfernt werden, Sie sollten das gew\(:unschte Quellformat immer in debian/source/format dokumentieren. Die verschiedenen Quellpaketformate werden im Abschnitt QUELLPAKET-FORMATE ausf\(:uhrlich beschrieben.
--print-format Verzeichnis
Gibt das Quellformat aus, dass zum Bau des Quellpakets verwandt w\(:urde, falls dpkg-source --build Verzeichnis aufgerufen w\(:urde (unter den gleichen Bedingungen und mit den gleichen Parametern, seit Dpkg 1.15.5).
--before-build Verzeichnis
Der entsprechende Hook des Quellpaketformats soll ausgef\(:uhrt werden (seit Dpkg 1.15.8). Dieser Hook wird vor jedem Bau des Pakets aufgerufen (dpkg-buildpackage ruft ihn sehr fr\(:uh, sogar vor debian/rules clean auf). Dieser Befehl ist idempotent und kann mehrfach aufgerufen werden. Nicht alle Quellformate implementieren in diesem Hook etwas und wenn dies erfolgt, dann gew\(:ohnlich zur Vorbereitung des Quellbaums f\(:ur den Bau, in dem beispielsweise sichergestellt wird, dass alle Debian-Patches angewandt sind.
--after-build Verzeichnis
Der entsprechende Hook des Quellpaketformats soll ausgef\(:uhrt werden (seit Dpkg 1.15.8). Dieser Hook wird nach jedem Bau des Pakets aufgerufen (dpkg-buildpackage ruft als Letztes auf). Dieser Befehl ist idempotent und kann mehrfach aufgerufen werden. Nicht alle Quellformate implementieren in diesem Hook etwas und wenn dies erfolgt, dann gew\(:ohnlich um r\(:uckg\(:angig zu machen, was --before-build durchgef\(:uhrt hat.
--commit [Verzeichnis] …
Zeichnet \(:Anderungen am in Verzeichnis entpackten Quellbaum auf (seit Dpkg 1.16.1). Dieser Befehl kann zus\(:atzliche Parameter akzeptieren, abh\(:angig vom Quellformat. Er wird zu einer Fehlermeldung bei Formaten, f\(:ur denen dieser Vorgang keine Bedeutung hat, f\(:uhren.
-?, --help Zeigt die Hinweise zur Benutzung und beendet das Programm. Die formatspezifischen Bau- und Entpackoptionen k\(:onnen mit der Option --format angezeigt werden.
--version
Gibt die Version aus und beendet das Programm.

OPTIONEN

Generische Bau-Optionen

-cSteuerdatei
Bestimmt die Hauptquell-control-Datei, aus der Informationen ausgelesen werden sollen. Der Standardwert ist debian/control. Falls der Pfadname relativ ist, wird dieser relativ zum obersten Verzeichnis des Quellbaums interpretiert.
-lChangelog-Datei
Bestimmt die Changelog-Datei, aus der Informationen ausgelesen werden sollen. Der Standardwert ist debian/changelog. Falls der Pfadname relativ ist, wird dieser relativ zum obersten Verzeichnis des Quellbaums interpretiert.
-FChangelog-Format
Spezifiziert das Format des Changelogs. Lesen Sie dpkg-parsechangelog(1) f\(:ur Informationen \(:uber alternative Formate.
--format=Wert
Verwendet das angegebene Format zum Bau des Quellpakets (seit Dpkg 1.14.17). Es \(:uberschreibt jedes in debian/source/format angegebene Format.
-VName=Wert
Setzt eine Ausgabeersetzungsvariable. Lesen Sie deb-substvars(5) f\(:ur eine Besprechung der Ausgabeersetzung.
-TSubstvars-Datei
Liest Ersetzungsvariablen aus Substvars-Datei; standardm\(:a\(ssig wird keine Datei gelesen. Diese Option kann mehrfach verwandt werden, um Ersetzungsvariablen aus mehreren Dateien einzulesen (seit Dpkg 1.15.6).
-DFeld=Wert
\(:Uberschreibt oder erg\(:anzt ein Ausgabesteuerdateifeld.
-Ufield Entfernt ein Ausgabesteuerdateifeld.
-ZKomprimierung, --compression=Komprimierung
Gibt die Komprimierung an, die f\(:ur die angelegten Tarb\(:alle und Diff-Dateien verwendet wird (--compression seit Dpkg 1.15.5). Beachten Sie, dass diese Option nicht dazu f\(:uhrt, dass existierende Tarb\(:alle rekomprimiert werden, sie betrifft nur neue Dateien. Unterst\(:utzte Werte sind gzip, bzip2, lzma und xz. xz ist f\(:ur Format 2.0 und neuer, gzip f\(:ur Format 1.0 voreingestellt. xz wird erst seit Dpkg 1.15.5 unterst\(:utzt.
-zStufe, --compression-level=Stufe
Zu verwendende Komprimierstufe (--compression-level seit Dpkg 1.15.5). Wie bei -Z betrifft dies nur neu angelegte Dateien. Unterst\(:utzte Werte sind 1 bis 9, best (am besten) und fast (schnell). Der Standardwert ist 9 f\(:ur Gzip und Bzip2, 6 f\(:ur Xz und Lzma.
-i[regex], --diff-ignore[=regex]
Sie k\(:onnen einen regul\(:aren Perl-Ausdruck angeben, der auf Dateien passt, die Sie aus der Liste der Dateien f\(:ur den Diff entfernen m\(:ochten ((--diff-ignore seit Dpkg 1.15.6); diese Liste wird von einem Find-Befehl generiert. Falls das Quellpaket als Version 3-Quellpaket mittels eines VCS gebaut wird, ignoriert dies stattdessen \(:Anderungen an bestimmten Dateien, die noch nicht \(:ubertragen (\(Bqcommitted\(lq) wurden (mit -i.* werden alle davon ignoriert).
Die Option -i selbst aktiviert diese Einstellung mit einem voreingestellten regul\(:aren Ausdruck (der alle \(:Anderungen durch einen standardm\(:a\(ssigen regul\(:aren Ausdruck erh\(:alt, die durch einen fr\(:uheren Aufruf von --extend-diff-ignore erfolgten), der Steuerdateien und -Verzeichnisse der h\(:aufigsten Revisionskontrollsysteme, Sicherungskopien, Swap-Dateien und Bau-Ausgabeverzeichnisse von Libtool herausgefiltert. Es kann nur einen aktiven regul\(:aren Ausdruck geben, von mehrfach angegebenen Optionen -i wird nur die letzte ber\(:ucksichtigt.
Dies ist sehr hilfreich, um irrelevante Dateien, die im Diff aufgenommen werden, zu entfernen. Falls Sie zum Beispiel Ihre Quellen in einem Revisionskontrollsystem speichern und \(BqCheckout\(lq verwenden m\(:ochten, um Ihr Quellpaket zu bauen, ohne die zus\(:atzlichen Dateien und Verzeichnisse, die darin typischerweise enthalten sind (z.B. CVS/, .cvsignore, .svn/), mit aufzunehmen. Der voreingestellte regul\(:are Ausdruck ist bereits sehr ersch\(:opfend, aber falls Sie ihn ersetzen m\(:ussen, beachten Sie, dass er standardm\(:a\(ssig auf alle Teile des Pfades passen kann. Falls Sie daher nur den Anfang eines Pfades oder komplette Dateinamen vergleichen wollen, m\(:ussen Sie die notwendigen Anker (z.B. \(bq(^|/)\(cq, \(bq($|/)\(cq) selbst bereitstellen.
--extend-diff-ignore=regex
Der angegebene regul\(:are Ausdruck (Perl-Format) wird den standardm\(:a\(ssigen von --diff-ignore verwandten Wert und dessen aktuellen Wert, falls gesetzt, erweitern (seit Dpkg 1.15.6). Dies erfolgt, indem \(Bq|regex\(lq an den existierenden Wert angeh\(:angt wird. Diese Option ist bequem in debian/source/options zu nutzen, um einige automatisch erstellte Dateien von der automatischen Patch-Erzeugung auszuschlie\(ssen.
-I[Dateimuster], --tar-ignore[=Dateimuster]
Falls diese Option angegeben wird, wird der Dateiname an die Option --exclude von tar(1) weitergegeben, wenn es zur Erstellung der Datei .orig.tar oder .tar aufgerufen wird (--tar-ignore seit Dpkg 1.15.6). Zum Beispiel f\(:uhrt -ICVS dazu, dass Tar CVS-Verzeichnisse \(:uberspringt, wenn es eine .tar-Datei erstellt. Diese Option kann mehrfach wiederholt werden, um mehrere Muster aufzuf\(:uhren, die ausgeschlossen werden sollen.
-I f\(:ugt standardm\(:a\(ssig von selbst --exclude-Optionen hinzu, die die Steuerdateien und -verzeichnisse der h\(:aufigsten Revisionskontrollsysteme, Sicherungs- und Swap-Dateien sowie Bau-Ausgabeverzeichnisse von Libtool herausfiltern.
Hinweis: Obwohl sie \(:ahnlichen Zwecken dienen, haben -i und -I eine sehr verschiedene Syntax und Semantik. -i kann nur einmal angegeben werden und nimmt einen regul\(:aren Perl-Ausdruck an, der gegen den vollen relativen Pfad jeder Datei gepr\(:uft wird. -I kann mehrfach angegeben werden und nimmt ein Dateinamen-Muster mit Shell-Jokerzeichen an. Das Muster wird gegen den vollen relativen Pfad, aber auch individuell auf jeden Teil des Pfades angewendet. Die exakte Semantik der Option --exclude ist etwas kompliziert, lesen Sie https://www.gnu.org/software/tar/manual/tar.html#wildcards f\(:ur eine komplette Dokumentation.
Der voreingestellte regul\(:are Ausdruck und Muster f\(:ur beide Optionen k\(:onnen in der Ausgabe des Befehls --help gesehen werden.

Generische Entpackoptionen

--no-copy Kopiert die Original-Tarb\(:alle nicht in die N\(:ahe des entpackten Quellpakets (seit 1.14.17).
--no-check
Pr\(:uft Signaturen und Pr\(:ufsummen vor dem Entpacken nicht (seit Dpkg 1.14.17).
--no-overwrite-dir
Das Entpackverzeichnis nicht \(:uberschreiben, falls es bereits existiert (seit Dpkg 1.18.8).
--require-valid-signature
Lehnt das Entpacken des Quellpakets ab, falls es keine OpenPGP-Signatur enth\(:alt, die entweder mit dem trustedkeys.gpg-Schl\(:usselbund des Benutzers, mit einem der Schl\(:usselbunde des Lieferanten oder mit einem der offiziellen Debian-Sch\(:usselbunde (/usr/share/keyrings/debian-keyring.gpg und /usr/share/keyrings/debian-maintainers.gpg) \(:uberpr\(:uft werden kann (seit Dpkg 1.15.0).
--require-strong-checksums
Lehnt das Entpacken des Quellpakets ab, falls es keine starken Pr\(:ufsummen enth\(:alt (seit Dpkg 1.18.7). Derzeit wird nur die Pr\(:ufsumme SHA-256 als stark betrachtet.
--ignore-bad-version
Wandelt die Pr\(:ufung auf eine defekte Quellpaketversion in eine nicht-fatale Warnung (seit Dpkg 1.17.7). Diese Option sollte nur notwendig sein, wenn ein historisches Quellpaket mit defekten Versionen entpackt wird, lediglich zur R\(:uckw\(:artskompatibilit\(:at.

QUELLPAKET-FORMATE

Falls Sie nicht wissen, welches Quellformat Sie verwenden sollen, verwenden Sie wahrscheinlich am besten entweder \(Bq3.0 (quilt)\(lq oder \(Bq3.0 (native)\(lq. Lesen Sie https://wiki.debian.org/Projects/DebSrc3.0 f\(:ur Informationen \(:uber den Einsatz dieser Formate innerhalb von Debian.

Format: 1.0

Ein Quellpaket in diesem Format besteht entweder aus einem .orig.tar.gz mit zugeh\(:origem .diff.gz oder einem einzelnen .tar.gz (in diesem Fall wird das Paket als nativ bezeichnet). Optional kann der urspr\(:ungliche Tarball von einer separaten Signatur der Originalautoren .orig.tar.gz.asc begleitet werden. Das Entpacken wird seit Dpkg 1.18.5 unterst\(:utzt.
Entpacken
Entpacken eines nativen Pakets ist ein einfaches Entpacken eines einzelnen Tarballs in das Zielverzeichnis. Entpacken eines nicht-nativen Pakets erfolgt zuerst durch Entpacken des .orig.tar.gz und dann durch Anwendung des Patches aus der .diff.gz-Datei. Der Zeitstempel aller gepatchten Dateien wird auf den Zeitpunkt des Entpackens des Quellpakets zur\(:uckgesetzt (das vermeidet Zeitstempelvers\(:atze, die zu Problemen f\(:uhren, wenn autogenerierte Dateien gepatcht werden). Der Diff kann neue Dateien anlegen (das gesamte Debian-Verzeichnis wird auf diese Weise erstellt), kann aber keine Dateien entfernen (leere Dateien bleiben zur\(:uck).
Bauen
Bauen eines nativen Pakets besteht nur aus dem Erstellen eines einzigen Tarballs mit dem Quellverzeichnis. Bauen eines nicht-nativen Pakets schlie\(sst das Entpacken des Original-Tarballs in ein separates Verzeichnis \(Bq.orig\(lq und die Neuerstellung des .diff.gz durch Vergleich des Quellpaket-Verzeichnisses mit dem Verzeichnis .orig ein.
Bau-Optionen (mit --build):
Falls ein zweites nicht-Options-Argument angegeben ist, sollte es der Name des Originalquellverzeichnisses oder der Tar-Datei sein. Falls das Paket Debian-spezifisch ist, dann sollte dieses Argument die leere Zeichenkette sein, da es keinen Debianisierungs-Diff gibt. Falls kein zweites Argument \(:ubergeben wird, dann schaut dpkg-source nach der urspr\(:unglichen Tar-Datei Paket_Upstream-Version.orig.tar.Erweiterung oder dem urspr\(:unglichen Quellverzeichnis Verzeichnis.orig, abh\(:angig von den -sX-Argumenten.
-sa, -sp, -sk, -su und -sr werden keine existierenden Tar-Dateien oder Verzeichnisse \(:uberschreiben. Falls dies gew\(:unscht ist, sollten stattdessen -sA, -sP, -sK, -sU und -sR verwendet werden.
-sk Gibt an, dass die Originalquellen als Tar-Datei erwartet werden sollen, standardm\(:a\(ssig Paket_Ursprungsversion.orig.tarErweiterung. Es wird diese Originalquellen als Tar-Datei am Platz belassen, oder sie in das aktuelle Verzeichnis kopieren, falls sie dort noch nicht sind. Der Tarball wird nach Verzeichnis.orig f\(:ur die Erstellung des Diffs entpackt.
-sp Wie -sk, aber das Verzeichnis wird danach entfernt.
-su Gibt an, dass die Originalquellen als Verzeichnis erwartet werden, standardm\(:a\(ssig Paket-Ursprungsversion.orig. dpkg-source wird daraus ein neues Original-Quellarchiv erstellen.
-sr Wie -su, aber das Verzeichnis wird nach der Verwendung entfernt.
-ss Gibt an, dass die Originalquellen sowohl als Verzeichnis als auch als Tar-Datei verf\(:ugbar sind. dpkg-source wird das Verzeichnis zur Erstellung des Diffs verwenden, aber die Tar-Datei f\(:ur die .dsc. Diese Option muss mit Vorsicht verwendet werden - falls das Verzeichnis und die Tar-Datei nicht zusammen passen, wird ein fehlerhaftes Quellarchiv erstellt.
-sn Gibt an, dass nicht nach Originalquellen geschaut und kein Diff erstellt werden soll. Das zweite Argument, falls angegeben, muss die leere Zeichenkette sein. Dies wird f\(:ur Debian-spezifische Pakete verwendet, die keine Quellen von Originalautoren und somit keinen Debianisierungs-Diff haben.
-sa oder -sA
Gibt an, dass nach dem Original-Quellarchiv als Tar-Datei oder als Verzeichnis gesucht werden soll - das zweite Argument, falls vorhanden, kann eines von beiden sein, oder die leere Zeichenkette (dies ist \(:aquivalent zur Verwendung von -sn). Falls eine Tar-Datei gefunden wird, wird diese zur Erstellung eines Diffs entpackt und danach entfernt (dies ist \(:aquivalent zu -sp); falls ein Verzeichnis gefunden wird, wird dieses gepackt, um die Originalquellen zu erstellen und danach entfernt (dies ist \(:aquivalent zu -sr); falls keines von beiden gefunden wird, wird angenommen, dass das Paket keinen Debianisierungs-Diff, sondern nur ein direktes Quellarchiv hat (dies ist \(:aquivalent zu -sn). Falls sowohl ein Verzeichnis als auch eine Tar-Datei gefunden werden, dann ignoriert dpkg-source das Verzeichnis, und \(:uberschreibt es, falls -sA angegeben wurde (dies ist \(:aquivalent zu -sP) oder l\(:ost einen Fehler aus, falls -sa angegeben wurde. -sa ist die Voreinstellung.
--abort-on-upstream-changes
Der Prozess schl\(:agt fehl, falls der erstellte Diff \(:Anderungen an Dateien au\(sserhalb des Unterverzeichnisses \(Bqdebian\(lq enth\(:alt (seit Dpkg 1.15.8). Diese Option ist in debian/source/options nicht erlaubt, kann aber in debian/source/local-options verwandt werden.
Entpackoptionen (mit --extract):
In allen F\(:allen werden die Originalquellb\(:aume entfernt.
-sp Wird beim Entpacken verwandt. Die Originalquellen (falls vorhanden) werden als Tar-Datei belassen. Falls diese sich nicht im aktuellen Verzeichnis befinden oder falls eine existierende, aber davon verschiedene Datei bereits vorhanden ist, wird sie dort hin kopiert. (Dies ist die Voreinstellung.)
-su Entpackt den Originalquellbaum.
-sn Stellt sicher, dass die Originalquellen weder in das aktuelle Verzeichnis kopiert noch entpackt werden. Jeder Originalquellbaum, der im aktuellen Verzeichnis war, wird dennoch entfernt.
Alle -sX-Optionen schlie\(ssen sich gegenseitig aus. Falls Sie mehr als eine angeben, wird nur die letzte verwendet.
--skip-debianization
\(:Uberspringt die Anwendung des Debian-Diffs \(:uber die Quellen der Originalautoren (seit Dpkg 1.15.1).

Format: 2.0

Seit Dpkg 1.13.9 Unterst\(:utzung des Entpackens, seit Dpkg 1.14.8 Unterst\(:utzung des Bauens. Auch als \(Bqwig&pen\(lq bekannt. Dieses Format wird nicht f\(:ur den breiten Einsatz empfohlen, es wird durch das Format \(Bq3.0 (quilt)\(lq ersetzt. Wig&pen war die erste Spezifikation eines Paketformats der n\(:achsten Generation.
Das Verhalten dieses Formats ist identisch zum Format \(Bq3.0 (quilt)\(lq, abgesehen davon, dass es keine explizite Liste von Patches verwendet. Alle Dateien in debian/patches/, die auf den regul\(:aren Perl-Ausdruck [\w-]+ passen, m\(:ussen g\(:ultige Patches sein: sie werden zum Zeitpunkt des Entpackens angewandt.
Wenn ein neues Quellpaket gebaut wird, werden alle \(:Anderungen an den Quellen der Originalautoren in einem Patch mit Namen zz_debian-diff-auto gespeichert.

Format: 3.0 (native)

Seit Dpkg 1.14.17 unterst\(:utzt. Dieses Format ist eine Erweiterung des nativen Paketformats, wie es im 1.0-Format definiert ist. Es unterst\(:utzt alle Kompressionsmethoden und ignoriert standardm\(:a\(ssig alle VCS-spezifischen Dateien und Verzeichnisse sowie viele tempor\(:are Dateien (lesen Sie den Standardwert der Option -I bei der Ausgabe von --help).

Format: 3.0 (quilt)

Seit Dpkg 1.14.17 unterst\(:utzt. Ein Quellpaket in diesem Format enth\(:alt mindestens einen Original-Tarball (.orig.tar.Erw, wobei Erw gz, bz2, lzma und xz sein kann) und einen Debian-Tarball (.debian.tar.Erw). Es kann auch zus\(:atzliche Original-Tarb\(:alle (.orig-Komponente.tar.Erw) enthalten. Komponente kann nur alphanumerische Zeichen (\(bqa-zA-Z0-9\(cq) und Bindestriche (\(bq-\(cq) enthalten. Optional kann jeder Original-Tarball von einer separaten Signatur der Originalautoren (.orig.tar.Erw.asc und .orig-Komponente.tar.Erw.asc) begleitet werden. Das Entpacken wird seit Dpkg 1.17.20, das Bauen seit Dpkg 1.18.5 unterst\(:utzt.
Entpacken
Der Haupt-Originaltarball wird zuerst entpackt, dann werden alle zus\(:atzlichen Originaltarb\(:alle in Unterverzeichnisse entpackt, die nach dem Komponenten-Teil ihres Dateinamens benannt werden (jedes bereits existierende Verzeichnis wird ersetzt). Der Debian-Tarball wird \(:uber das Quellverzeichnis entpackt, nachdem jedes bereits existierende debian-Verzeichnis entfernt wurde. Beachten Sie, dass der Debian-Tarball ein debian-Unterverzeichnis enthalten muss, er aber auch Bin\(:ardateien au\(sserhalb dieses Verzeichnisses enthalten darf (sehen Sie hierzu die Option --include-binaries).
Dann werden alle in debian/patches/Lieferant.series oder debian/patches/series aufgef\(:uhrten Patches angewandt, wobei Lieferant der Name des aktuellen Lieferanten in Kleinbuchstaben ist oder debian, falls kein Lieferant definiert ist. Falls die erstere Datei verwandt wird und die Letztere nicht existiert (oder ein Symlink ist), dann wird die Letztere durch einen Symlink zu Ersterer ersetzt. Dies ist zur Vereinfachung der Verwendung von quilt gedacht, um die Gruppe von Patches zu verwalten. Lieferantenspezifische Seriendateien sind dazu gedacht, es zu erm\(:oglichen, mehrere Entwicklungszweige basierend auf dem Lieferanten auf eine deklarative Art zu serialisieren, und diese gegen\(:uber der offenen Codierung dieser Handhabung in debian/rules zu bevorzugen. Dies ist insbesondere n\(:utzlich, wenn die Quellen mit Bedingungen gepacht werden m\(:ussten, da die betroffenen Dateien keine eingebaute abh\(:angige Okklusionsunterst\(:utzung haben. Beachten Sie allerdings, dass dpkg-source zwar Seriendateien auswertet, in denen explizite Optionen f\(:ur die Anwendung der Patches verwandt werden (diese werden auf jede Zeile nach dem Patch-Dateinamen und einem oder mehreren Leerzeichen gespeichert), diese Optionen dann aber ignoriert und immer erwartet, dass die Patches mit der Option -p1 von patch angewandt werden k\(:onnen. Es wird daher eine Warnung ausgegeben, wenn es auf solche Optionen trifft, und der Bau wird wahrscheinlich fehlschlagen.
Beachten Sie, dass lintian(1) aufgrund Debian-spezifischer Regularien bedingungslos Warnungen ausgeben wird, wenn Lieferantenserien verwandt werden. Dies sollte die Verwendung au\(sserhalb von Debian nicht betreffen. Um diese Warnungen auszublenden, kann das Dpkg-Lintian-Profil mittels \(:Ubergabe von \(Bq--profile dpkg\(lq an lintian(1) verwandt werden.
Der Zeitstempel aller gepatchten Dateien wird auf die Entpackzeit des Quellpakets zur\(:uckgesetzt. Damit werden Zeitstempelvers\(:atze vermieden, die zu Problemen f\(:uhren, wenn automatisch erzeugte Dateien gepatcht werden.
Im Gegensatz zum Standardverhalten bei quilt wird erwartet, dass die Patches ohne Unsch\(:arfe angewandt werden k\(:onnen. Wenn das nicht der Fall ist, sollten Sie die Patches mit quilt erneuern oder dpkg-source wird mit einer Fehlermeldung beim Versuch, sie anzuwenden, abbrechen.
\(:Ahnlich wie bei quilt k\(:onnen Patches auch Dateien entfernen.
Die Datei .pc/applied-patches wird angelegt, falls einige Patches w\(:ahrend des Entpackens angewandt wurden.
Bauen
Alle im aktuellen Verzeichnis gefundenen Original-Tarb\(:alle werden in ein tempor\(:ares Verzeichnis entpackt. Hierbei wird die gleiche Logik wie f\(:ur das Entpacken verwandt, das debian-Verzeichnis wird in das tempor\(:are Verzeichnis kopiert und alle Patches au\(sser dem automatischen Patch (debian-changes-Version oder debian-changes, abh\(:angig von --single-debian-patch) werden angewandt. Das tempor\(:are Verzeichnis wird mit dem Quellpaketverzeichnis verglichen. Wenn der Diff nicht leer ist, schl\(:agt der Bau fehl, falls nicht --single-debian-patch oder --auto-commit verwandt wurde; in diesem Fall wird der Diff im automatischen Patch gespeichert. Falls der automatische Patch erzeugt/gel\(:oscht wird, wird er zu der Datei \(Bqseries\(lq und den quilt-Metadaten hinzugef\(:ugt bzw. aus diesen gel\(:oscht.
\(:Anderungen an Bin\(:ardateien k\(:onnen in einem Diff nicht dargestellt werden und f\(:uhren daher zu einem Fehlschlag, es sei denn, der Betreuer hat sich absichtlich dazu entschlossen, die ver\(:anderte Bin\(:ardatei dem Debian-Tarball hinzuzuf\(:ugen (indem er sie in debian/source/include-binaries aufgef\(:uhrt hat). Der Bau wird auch fehlschlagen, falls er Bin\(:ardateien im \(Bqdebian\(lq-Unterverzeichnis findet, die nicht \(:uber debian/source/include-binaries freigegeben wurden.
Das aktualisierte debian-Verzeichnis und die Liste der ver\(:anderten Programme wird dann zur Erstellung des Debian-Tarballs verwandt.
Der automatisch erstellte Diff enth\(:alt keine \(:Anderungen an VCS-spezifischen sowie vielen tempor\(:aren Dateien (lesen Sie hierzu den zur Option -i zugeordneten Standardwert in der Ausgabe von --help). Insbesondere wird das von quilt verwandte .pc-Verzeichnis w\(:ahrend der Erstellung des automatischen Patches ignoriert.
Hinweis: dpkg-source --before-build (und --build) stellen sicher, dass alle in der Series-Datei aufgef\(:uhrten Patches angewendet sind, so dass ein Paketbau immer mit allen angewandten Patches durchgef\(:uhrt wird. Dies erfolgt, indem nicht angewandte Patches ermittelt werden (sie sind in der Datei series, aber nicht in der Datei .pc/applied-patches aufgef\(:uhrt) und wenn der erste Patch in dem Satz ohne Fehler angewandt werden kann, werden sie alle angewandt. Die Option --no-preparation kann zum Abschalten dieses Verhaltens verwandt werden.
\(:Anderungen aufzeichnen
--commit [Verzeichnis] [Patch-Name] [Patch-Datei]
Erstellt einen Patch, der den lokalen \(:Anderungen entspricht, die nicht vom quilt-Patch-System verwaltet werden und integriert ihn unter dem Namen Patch-Name in das Patch-System. Falls der Name fehlt, wird er interaktiv erfragt. Falls Patch-Datei angegeben ist, wird er als Patch, der zu den lokalen \(:Anderungen, die integriert werden sollen, geh\(:ort, verwandt. Sobald der Patch integriert wurde, wird ein Editor gestartet, so dass Sie die Metainformationen in den Kopfzeilen des Patches einf\(:ugen k\(:onnen.
Die Verwendung von patch-Datei ist prim\(:ar nach einem Baufehler n\(:utzlich, der diese Datei vorgenerierte und daher wird die \(:ubergebene Datei nach der Integration entfernt. Beachten Sie auch, dass die \(:Anderungen, die in der Patch-Datei angegeben sind, bereits im Baum angewandt worden sein m\(:ussen und dass die Dateien, die von diesem Patch ge\(:andert werden, keine zus\(:atzlichen, nicht aufgezeichneten \(:Anderungen enthalten d\(:urfen.
Falls die Patch-Erzeugung ver\(:anderte Bin\(:ardateien erkennt, werden diese automatisch zu debian/source/include-binaries hinzugef\(:ugt, so dass sie im Debian-Tarball landen (genau wie dies dpkg-source --include-binaries --build machen w\(:urde).
Bau-Optionen
--allow-version-of-quilt-db=Version
Erlaubt es dpkg-source, ein Quellpaket zu bauen, falls die Version der quilt-Metadaten die angegebene ist, selbst falls dpkg-source nichts davon wei\(ss (seit Dpkg 1.15.5.4). Effektiv teilt dies mit, dass die angegebene Version der quilt-Metadaten zu Version 2, die dpkg-source derzeit unterst\(:utzt, kompatibel ist. Die Version der quilt-Metadaten wird in .pc/.version gespeichert.
--include-removal
Ignoriert entfernte Dateien nicht und f\(:ugt sie zu dem automatisch generierten Patch hinzu.
--include-timestamp
F\(:ugt Zeitstempel zu dem automatisch generierten Patch hinzu.
--include-binaries
F\(:ugt alle ver\(:anderten Programme zu dem debian-Tarball hinzu. F\(:ugt sie auch in debian/source/include-binaries hinzu: sie werden in folgenden Bauten standardm\(:a\(ssig hinzugef\(:ugt und diese Option wird daher dann nicht mehr ben\(:otigt.
--no-preparation
Versucht nicht, den Bau-Baum durch Anwenden aller derzeit nicht angewandten Patches vorzubereiten (seit Dpkg 1.14.18).
--single-debian-patch
Verwendet debian/patches/debian-changes statt debian/patches/debian-changes-Version als Namen f\(:ur den w\(:ahrend des Baus automatisch generierten Patch (seit Dpkg 1.15.5.4). Diese Option ist insbesondere n\(:utzlich, wenn das Paket in einem VCS betreut wird und ein Patch-Satz nicht zuverl\(:assig erstellt werden kann. Stattdessen sollte der aktuelle Diff zu den Quellen der Originalautoren in einem einzelnen Patch gespeichert werden. Diese Option sollte in debian/source/local-options eingestellt werden und w\(:urde dann von einer Datei debian/source/local-patch-header begleitet, in der erkl\(:art wird, wie die Debian-\(:Anderungen am besten begutachtet werden k\(:onnen, beispielsweise im eingesetzten VCS.
--create-empty-orig
Erstellt den Hauptoriginal-Tarball automatisch als leer, falls er fehlt und falls es erg\(:anzende Original-Tarb\(:alle gibt (seit Dpkg 1.15.6). Diese Option ist daf\(:ur gedacht, wenn das Quellpaket nur eine Sammlung von mehreren St\(:ucken Software der Originalautoren ist und es keine \(BqHaupt\(lq-Software gibt.
--no-unapply-patches, --unapply-patches
Standardm\(:a\(ssig wird dpkg-source die Patches im --after-build-Hook entfernen, falls es sie in --before-build angewandt hat (--unapply-patches seit Dpkg 1.15.8, --no-unapply-patches seit Dpkg 1.16.5). Diese Optionen erlauben es Ihnen, den Patch-Anwendungs- oder -Entfernungs-Prozess zwangsweise zu aktivieren bzw. zu deaktivieren. Diese Optionen sind nur in debian/source/local-options erlaubt, so dass alle erstellten Quellpakete standardm\(:a\(ssig das gleiche Verhalten zeigen.
--abort-on-upstream-changes
Dieser Prozess schl\(:agt fehl, falls ein automatischer Patch erstellt wurde (seit Dpkg 1.15.8). Diese Option kann dazu verwandt werden, sicherzustellen, dass alle \(:Anderungen korrekt in separaten quilt-Patches aufgezeichnet wurden, bevor das Paket gebaut wurde. Diese Option ist in debian/source/options nicht erlaubt, kann aber in debian/source/local-options verwandt werden.
--auto-commit
Der Vorgang schl\(:agt nicht fehl, falls ein automatischer Patch erstellt wurde, stattdessen wird dieser sofort in die quilt-Serie aufgenommen.
Entpackoptionen
--skip-debianization
\(:Uberspringt das Entpacken des Debian-Tarballs \(:uber die Quellen der Originalautoren (seit Dpkg 1.15.1).
--skip-patches
Wendet am Ende des Entpackens keine Patches an (seit Dpkg 1.14.18).

Format: 3.0 (custom)

Seit Dpkg 1.14.17 unterst\(:utzt. Dieses Format ist besonders. Es stellt kein echtes Quellpaket dar, kann aber zur Erstellung eines Quellpakets mit beliebigen Dateien verwandt werden.
Bau-Optionen
Alle Argumente, die keine Optionen sind, werden als Dateien verstanden, die in das generierte Quellpaket integriert werden sollen. Sie m\(:ussen existieren und sich bevorzugt im aktuellen Verzeichnis befinden. Mindestens eine Datei muss angegeben werden.
--target-format=Wert
Notwendig. Definiert das echte Format des generierten Quellpakets. Die generierte .dsc-Datei wird diesen Wert und nicht \(Bq3.0 (custom)\(lq in ihrem Format-Feld enthalten.

Format: 3.0 (git)

Seit Dpkg 1.14.17 unterst\(:utzt. Dieses Format ist experimentell.
Ein Quellpaket in diesem Format besteht aus einem einzelnen B\(:undel eines Git-Depots .git, um die Quellen des Pakets zu verwahren. Es kann auch eine Datei .gitshallow geben, die die Revisionen f\(:ur einen flachen Git-Clone auff\(:uhrt.
Entpacken
Das B\(:undel wird als Git-Depot in das Zielverzeichnis geklont. Falls es eine gitshallow-Datei gibt, wird diese als .git/shallow innerhalb des geklonten Git-Depots installiert.
Beachten Sie, dass standardm\(:a\(ssig im neuen Depot der gleiche Zweig ausgecheckt ist, der auch in der urspr\(:unglichen Quelle ausgecheckt war (typischerweise \(Bqmaster\(lq, es k\(:onnte aber auch was beliebig anderes sein). Alle anderen Zweige sind unter remotes/origin/ verf\(:ugbar.
Bauen
Bevor fortgefahren wird, werden einige \(:Uberpr\(:ufungen ausgef\(:uhrt, um sicherzustellen, dass keine nicht-ignorierten, nicht-\(:ubertragenen (\(Bquncommitted\(lq) \(:Anderungen vorliegen.
git-bundle(1) wird zur Erstellung des B\(:undels des Git-Depots verwandt. Standardm\(:a\(ssig werden alle Zweige und Markierungen im Depot im B\(:undel einbezogen.
Bau-Optionen
--git-ref=Referenz
Erlaubt die Angabe einer Git-Referenz zur Aufnahme in dem Git-B\(:undel. Die Verwendung deaktiviert das standardm\(:a\(ssige Verhalten, alle Zweige und Markierungen aufzunehmen. Kann mehrfach angegeben werden. Referenz kann der Name eines Zweiges oder einer Markierung, der/die aufgenommen werden soll, sein. Es kann auch ein Parameter sein, der an git-rev-list(1) \(:ubergeben werden kann. Verwenden Sie beispielsweise --git-ref=master, um nur den Master-Zweig aufzunehmen. Um alle Markierungen und Zweige au\(sser dem Zweig \(Bqprivate\(lq aufzunehmen, verwenden Sie --git-ref=--all --git-ref=^private.
--git-depth=Zahl
Erstellt einen flachen Klon mit einem Verlauf, der bei der angegebenen Anzahl an Revisionen abgeschnitten wird.

Format: 3.0 (bzr)

Seit Dpkg 1.14.17 unterst\(:utzt. Dieses Format ist experimentell. Es erstellt einen einzigen Tarball, der das Bzr-Depot enth\(:alt.
Entpacken
Der Tarball wird entpackt und dann wird Bzr verwandt, um den aktuellen Zweig auszuchecken.
Bauen
Bevor fortgefahren wird, werden einige \(:Uberpr\(:ufungen ausgef\(:uhrt, um sicherzustellen, dass keine nicht-ignorierten, nicht-\(:ubertragenen (\(Bquncommitted\(lq) \(:Anderungen vorliegen.
Dann wird der VCS-spezifische Teil des Quellpakets in ein tempor\(:ares Verzeichnis kopiert. Bevor dieses tempor\(:are Verzeichnis in einen Tarball gepackt wird, werden verschiedene Bereinigungen durchgef\(:uhrt, um Platz zu sparen.

DIAGNOSE

kein Quellformat in debian/source/format angegeben

Die Datei debian/source/format sollte immer existieren und das gew\(:unschte Quellformat angeben. F\(:ur R\(:uckw\(:artskompatibilit\(:at wird das Format \(Bq1.0\(lq angenommen, wenn die Datei nicht existiert, aber Sie sollten sich nicht darauf verlassen: Irgendwann in der Zukunft wird dpkg-source ver\(:andert und dann fehlschlagen, wenn diese Datei nicht existiert.
Die Begr\(:undung liegt darin, dass \(Bq1.0\(lq nicht mehr das empfohlene Format ist, Sie sollten normalerweise eines der neueren Formate (\(Bq3.0 (quilt)\(lq, \(Bq3.0 (native)\(lq) ausw\(:ahlen, aber dpkg-source wird dies nicht f\(:ur Sie automatisch vornehmen. Falls Sie weiterhin das alte Format verwenden m\(:ochten, sollten Sie dies explizit angeben und \(Bq1.0\(lq in debian/source/format eintragen.

der Diff ver\(:andert die folgenden Dateien der Originalautoren

Beim Einsatz des Quellformats \(Bq1.0\(lq ist es normalerweise keine gute Idee, die Dateien der Originalautoren direkt zu ver\(:andern, da die \(:Anderungen gr\(:o\(sstenteils versteckt und undokumentiert in der diff.gz-Datei verschwinden. Stattdessen sollten Sie Ihre \(:Anderungen als Patches im debian-Verzeichnis speichern und w\(:ahrend des Baus anwenden. Um diese Komplexit\(:at zu vermeiden, k\(:onnen Sie auch das Format \(Bq3.0 (quilt)\(lq verwenden, das dies von sich aus anbietet.

kann \(:Anderungen an Datei nicht darstellen

\(:Anderungen an den Quellen der Originalautoren werden normalerweise als Patch-Dateien gespeichert, aber nicht alle \(:Anderungen k\(:onnen als Patches dargestellt werden: Sie k\(:onnen nur \(:Anderungen am Inhalt einfacher Textdateien vornehmen. Falls Sie versuchen, eine Datei durch etwas eines anderen Typs zu ersetzen (beispielsweise eine einfache Datei durch einen Symlink oder ein Verzeichnis), werden Sie diese Fehlermeldung erhalten.

neu angelegte leere Datei Datei wird im Diff nicht dargestellt werden

Leere Dateien k\(:onnen nicht mit Patchdateien erstellt werden. Daher wird diese \(:Anderung nicht im Quellpaket aufgezeichnet und Sie erhalten dazu diese Warnung.

ausf\(:uhrbarer Modus Rechte von Datei wird nicht im Diff dargestellt werden

Patch-Dateien speichern nicht die Rechte von Dateien und daher werden Ausf\(:uhrbarkeitsrechte nicht im Quellpaket gespeichert. Diese Warnung erinnert Sie an diese Tatsache.

besonderer Modus Rechte von Datei wird nicht im Diff dargestellt werden

Patch-Dateien speichern nicht die Rechte von Dateien und daher werden ge\(:anderte Rechte nicht im Quellpaket gespeichert. Diese Warnung erinnert Sie an diese Tatsache.

UMGEBUNG

DPKG_COLORS
Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit unterst\(:utzten Werte sind: auto (Vorgabe), always und never.
DPKG_NLS
Falls dies gesetzt ist, wird es zur Entscheidung, ob Native Language Support, auch als Unterst\(:utzung f\(:ur Internationalisierung (oder i18n) bekannt, aktiviert wird (seit Dpkg 1.19.0). Die akzeptierten Werte sind: 0 und 1 (Vorgabe).
SOURCE_DATE_EPOCH
Falls gesetzt, wird sie als Zeitstempel (als Sekunden seit der Epoche) zum Festlegen der Mtime in den Dateieintr\(:agen von tar(5) verwandt.
VISUAL EDITOR Von den \(Bq2.0\(lq- und \(Bq3.0 (quilt)\(lq-Quellformatmodulen verwandt.
GIT_DIR
GIT_INDEX_FILE GIT_OBJECT_DIRECTORY GIT_ALTERNATE_OBJECT_DIRECTORIES GIT_WORK_TREE Von dem \(Bq3.0 (quilt)\(lq-Quellformatmodul verwandt.

DATEIEN

debian/source/format

Diese Datei enth\(:alt auf einer einzelnen Zeile das Format, das zum Bau des Quellpakets verwandt werden soll (m\(:ogliche Formate sind oben beschrieben). Leerzeichen am Zeilenanfang oder -ende sind nicht erlaubt.

debian/source/include-binaries

Diese Datei enth\(:alt eine Liste von Pfadnamen von Bin\(:ardateien (eine pro Zeile), relativ zum Quellwurzelverzeichnis, die in den Debian-Tarball aufgenommen werden sollen. Leerzeichen am Anfang und Ende der Zeile werden entfernt. Zeilen, die mit \(bq#\(cq anfangen, sind Kommentare und werden \(:ubersprungen. Leere Zeilen werden ignoriert.

debian/source/options

Diese Datei enh\(:alt eine Liste an Optionen, die automatisch vor den Satz an Befehlszeilenoptionen bei einem Aufruf dpkg-source --build oder dpkg-source --print-format gesetzt werden sollen. Optionen wie -compression und --compression-level sind f\(:ur diese Datei gut geeignet.
Jede Option sollte auf einer separaten Zeile stehen. Leerzeilen und Zeilen, die mit \(bq#\(cq beginnen, werden ignoriert. Das einleitende \(bq--\(cq sollte entfernt werden und kurze Optionen sind nicht erlaubt. Optionale Leerzeichen um das \(bq=\(cq-Symbol sowie optionale Anf\(:uhrungszeichen um den Wert sind erlaubt. Hier ist ein Beispiel f\(:ur so eine Datei:
# lass dpkg-source ein debian.tar.bz2 mit maximaler Komprimierung
# erstellen
compression = "bzip2"
compression-level = 9
# verwende debian/patches/debian-changes als automatischen Patch
single-debian-patch
# ignoriere \(:Anderungen von config.{sub,guess}
extend-diff-ignore = "(^|/)(config.sub|config.guess)$"
Hinweis: --format-Optionen werden in dieser Datei nicht akzeptiert, Sie sollten stattdessen debian/source/format verwenden.

debian/source/local-options

Genau wie debian/source/options, au\(sser dass die Datei nicht in das erstellte Quellpaket aufgenommen wird. Dies kann n\(:utzlich sein, um Voreinstellungen zu speichern, die an einen bestimmten Betreuer oder an ein bestimmtes VCS, in dem das Paket gewartet wird, gebunden sind.

debian/source/local-patch-header und debian/source/patch-header

Formloser Text, der an den Anfang des in den Formaten \(Bq2.0\(lq und \(Bq3.0 (quilt)\(lq generierten automatischen Patches gestellt wird. local-patch-header wird dem erstellten Quellpaket nicht hinzugef\(:ugt, patch-header dagegen schon.

debian/patches/Lieferant.series

debian/patches/series

Diese Datei f\(:uhrt alle Patches auf, die (in der angegebenen Reihenfolge) auf das Quellpaket der Originalautoren angewandt werden m\(:ussen. Leerzeichen am Anfang und Ende werden entfernt. Lieferant ist der Name des aktuellen Lieferanten in Kleinschreibung oder debian, falls kein Lieferant definiert ist. Falls die lieferantenspezifische Seriendatei nicht existiert, wird eine lieferantenfreie Seriendatei verwandt. Zeilen, die mit \(bq#\(cq anfangen, sind Kommentare und werden \(:ubersprungen. Leere Zeilen werden ignoriert. Die verbleibenden Zeilen beginnen mit dem Dateinamen eines Patches (relativ zum Verzeichnis debian/patches/) bis zum ersten Leerzeichen oder bis zum Zeilenende. Bis zum Ende der Zeile oder bis zum ersten \(bq#\(cq gefolgt von einem oder mehreren Leerzeichen (dies markiert den Beginn eines Kommentars, der bis zum Zeilenende geht) k\(:onnen optionale quilt-Befehle folgen.

FEHLER

Die Stelle, an der das \(:Uberschreiben von Feldern passiert, verglichen mit bestimmten Standard-Ausgabe-Feldeinstellungen, ist eher verwirrend.

\(:UBERSETZUNG

Die deutsche \(:Ubersetzung wurde 2004, 2006-2020 von Helge Kreutzmann <>, 2007 von Florian Rehnisch <> und 2008 von Sven Joachim <> angefertigt. Diese \(:Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 2 oder neuer f\(:ur die Kopierbedingungen. Es gibt KEINE HAFTUNG.
⇧ Top