Debuild: Kein Upstream-Tarball gefunden

7

Was ist die richtige Namenskonvention für ein gepatchtes Paket?

Ich versuche, eine Version von exiv2 mit Patch zusammenzustellen, um ein zusätzliches Schema hinzuzufügen.

Folgendes habe ich bisher getan:

$ sudo apt-get build-dep exiv2
$ cd src/exiv2
$ apt-get source exiv2
$ cd exiv2-0.23-1ubuntu2
 ... apply patch
$ dpkg-source --commit
$ dch -i
    exiv2 (0.23-1ubuntu2-DwC1) trusty; urgency=medium
$ debuild -S -sd -k1230CB40

Aber dann bekomme ich eine Fehlermeldung:

Dieses Paket hat eine Debian-Versionsnummer, aber es scheint keine geeignete ursprüngliche TAR-Datei oder ein .orig-Verzeichnis im übergeordneten Verzeichnis zu geben. (erwartet eine von exiv2_0.23-1ubuntu2.orig.tar.gz, exiv2_0.23-1ubuntu2.orig.tar.bz2, exiv2_0.23-1ubuntu2.orig.tar.lzma, exiv2_0.23-1ubuntu2.orig.tar. xz oder exiv2-0.23-1ubuntu2.orig) trotzdem weitermachen? (j / n) y

dpkg-source -b exiv2-0.23-1ubuntu2 dpkg-source: Fehler: Kann nicht mit dem Quellformat '3.0 (Quilt)' erstellt werden: Kein Upstream-Tarball gefunden unter ../exiv2_0.23-1ubuntu2.orig.tar.{bz2 , gz, lzma, xz} dpkg-buildpackage: Fehler: dpkg-source -b exiv2-0.23-1ubuntu2 gab den Fehler-Exit-Status 255 debuild: schwerwiegender Fehler in Zeile 1364: dpkg-buildpackage -rfakeroot -d -us -uc -S - SD fehlgeschlagen

$ ls ..
exiv2-0.23-1ubuntu2  exiv2_0.23-1ubuntu2.debian.tar.gz  exiv2_0.23-1ubuntu2.dsc  exiv2_0.23-1ubuntu2-DwC1_source.build  exiv2_0.23.orig.tar.gz

Was muss ich tun, damit debuild die ursprüngliche TAR-Datei erkennt?

asp
quelle

Antworten:

4

Das Problem ist die -DwC1in Ihrer Version enthaltene Zeichenfolge. Gemäß der Debian-Richtlinie kann die Upstream-Version enthalten, . + - : ~aber die Debian- Revision kann nur enthalten + . ~, sodass alles Vorherige -DwC1als Teil der Upstream-Version betrachtet wird und daher nach einem Original-Tarball mit dieser Version gesucht wird.

dch gibt einen Hinweis darauf, als Sie diesen Eintrag hinzugefügt haben:

dch warning: your current directory has been renamed to:
../exiv2-0.23-1ubuntu2
dch warning: no orig tarball found for the new version.

Wenn ich ein ppa-Upload eines Pakets durchführe, stoße ich normalerweise auf die Ubuntu-Version und füge beispielsweise so etwas wie ~ppa0und normalerweise die Zielversion hinzu ~trusty. Also zum Beispiel 1ubuntu2zu 1ubuntu3~ppa0~trusty. Die zusätzlichen Zeichenfolgen mit führen ~dazu, dass die Version weniger verglichen wird. 1ubuntu3Wenn das Paket in den Hauptrepositorys aktualisiert wird, erhält der Benutzer die neuere Version.

Wirklich, obwohl alles, was Sie tun müssen, ist, den Bindestrich aus Ihrer Version zu entfernen, 1ubuntu2DwC1würde also funktionieren, oder vielleicht 1ubuntu2.DwC1.

Jason Conti
quelle
Wenn ich exiv2-0.23-1ubuntu3 ~ DwC1 verwende, benennt dch das aktuelle Verzeichnis um. Ich denke auch nicht, dass ich das will. Aber exiv2-0.23-1ubuntu2DwC1 funktioniert!
Asp
@asp Seltsam, 0.23-1ubuntu3~DwC1funktioniert hier gut.
Jason Conti
@asp Oh, ich wette ich weiß was das Problem war. Wenn Sie von Ihrem Quellverzeichnis aus, in dem Sie die Version benannt haben, weitergearbeitet haben -DwC1und die Version in ~DwC1dch geändert haben, wird das Verzeichnis wieder umbenannt, es sollte jedoch keine dch warning: no orig tarball found for the new version.Warnung angezeigt werden . Also war es wahrscheinlich okay.
Jason Conti