Auf einem Ubuntu 8.04 Hardy Heron versuche ich beim Paketbauen durchzublicken:
Ich hole mir z.B. in ein neues Verzeichnis
cd /usr/local/src/vdr; apt-get source vdr-plugin-burn
Das hatte Zuwendung besonders nötig:
wget http://launchpadlibrarian.net/23999811/99_ten.tar.gz; cd vdr-plugin-burn-0.1.0~pre21;tar xvfz ../99_ten.tar.gz
Am Ende von debian/patches/00list steht nun also 99_ten für meinen debian/patches/99_ten.dpatch
Und nun das Problem:
Rufe ich nun dpatch-edit-patch -a 99_ten auf (mit -c habe ich auch nicht mehr Erfolg), meldet dieses:
ZitatAlles anzeigen[...]
applying patch 92_requantfactor to ./ ... ok.
applying patch 99_ten to ./ ... ok.
dpatch-edit-patch: * Copying reference directory /tmp/dpep-ref.k10292/vdr-plugin-burn-0.1.0~pre21 to work directory.
dpatch-edit-patch: * Applying current 99_ten.dpatch for editing.
99_ten already applied to ./ .
dpatch-edit-patch:
Now launching an interactive shell in your work directory. Edit your files.
When you are done, exit the shell. When you exit the shell, your patch will be
automatically updated based on the changes in your work directory.
If you wish to abort the process, exit the shell such that it returns an exit
code of "230". This is typically done by exiting the shell with the command
'exit 230'.
Editiere ich in dessen fakeroot-Umgebung z.B. mit gedit gdwrapper.c weitere Quellen und gehe mit exit aus dem fakeroot, erhalte ich die Meldungen:
Zitatdpatch-edit-patch: Updating patch /usr/local/src/vdr/vdr-plugin-burn-0.1.0~pre21/debian/patches/99_ten.dpatch
dpatch-edit-patch: @DPATCH@ tag found, preserving dpatch header.
dpatch-edit-patch: /usr/local/src/vdr/vdr-plugin-burn-0.1.0~pre21/debian/patches/99_ten.dpatch updated.
Danach liegen aber nur die neuen Änderungen in der ÿdebian/patches/99_ten.dpatch
Versuche ich nun mit dpkg-buildpackage -tc das ../vdr-plugin-burn_0.1.0~pre21-20ubuntu3_i386.deb zu bauen, enthält dieses naturgemäß auch nur die neuen Änderungen.
Es erfolgt also kein ergänzendes Update, sondern eine Ersetzung der debian/patches/99_ten.dpatch.
Natürlich kann man nach jeder Änderung die jeweils neueste debian/patches/99_ten.dpatch "in Sicherheit kopieren" und die verschiedenen Änderungsgenerationen dann manuell in eine Datei zusammenführen - aber an schrittweise Entwicklung ist so kaum zu denken und diese Aufgabe verspricht ja eigentlich dpatch-edit-patch zu übernehmen.
Was entstehen soll, ist ganz einfach: Eine debian/patches/99_ten.dpatch, die alle meine Änderungen zusammenfasst, auch wenn zwischendurch mehrfach dpkg-buildpackage ausgeführt wurde, um das Debian-Paket testweise zu installieren.
Ich habe gelesen, was erreichbar war, neben den man-Pages natürlich u.a. http://www.e-tobi.net/blog/art…ebian-vdr-plug-in-paketes und http://matrixhasu.altervista.org/index.php?view=use_dpatch, aber woran die Aktualisierung des Patches scheitert, konnte ich noch nicht herausfinden.
Wer kann mir sagen, woran es liegt und wie das richtig funktioniert?