Package: compiz Version: 0.7.4-1 Severity: wishlist Usertags: 3.0-quilt-by-default
To prepare a possible switch to the new source package format "3.0 (quilt)" [1], I converted all source packages and tried to rebuild them. Unfortunately, compiz failed, you can try yourself with those commands (and dpkg-dev >= 1.14.19 [2]) : $ apt-get source compiz $ sed -i -e '/^Source:/ aFormat: 3.0 (quilt)' compiz-0.7.4/debian/control $ dpkg-source -b compiz-0.7.4 $ dpkg-source -x compiz_0.7.4-1.dsc $ cd compiz-0.7.4 && debuild -us -uc In this process, if the .diff.gz contains changes to upstream files, dpkg-source will have created a corresponding patch in debian/patches/debian-changes-0.7.4-1 and will have registered that patch in a quilt series (debian/patches/series, it is created if needed). All the patches listed in the "series" file are applied directly during the extraction (dpkg-source -x). quilt itself is used if available (and will thus lead to the creation of the .pc directory), otherwise dpkg-source applies the patches by itself. For more information about the new source package format see the manual page dpkg-source(1). In the case of compiz, the quilt series contains patches that modify files in the debian directory. You shouldn't have to dynamically patch the files in the debian directory since its content is provided by the .diff.gz (or the new .debian.tar.gz in the new format). Dynamic modification of files from the debian directory makes it impossible for dpkg-source to generate debian-changes-* patch because the quilt series doesn't apply on top of the upstream sources with a copy of the current debian directory (where the changes has been applied already). As a side note, you must also pay attention to the following points in your quilt usage to guarantee compatibility with the new source package format: - all your patches must be applicable with the "-p1" option of patch (and you shouldn't use options in the series file to override this) - the patches must be in debian/patches/ together with the "series" file (you can use QUILT_PATCHES=debian/patches if needed) - you should not override QUILT_PC to change the location of quilt's internal directory (".pc" by default) - the patches should not reference absolute filenames (in +++/--- lines) - your clean target must work even if the patches are already applied - your build target must work with patches applied even if the clean target is supposed to unapply them (because dpkg-source -b might have applied them back) Cheers, [1] http://lists.debian.org/debian-devel-announce/2008/04/msg00004.html [2] the upcoming dpkg-dev 1.14.20 is more tolerant with patches, you can grab it here if you want to try with that version: http://people.debian.org/~hertzog/packages/dpkg-dev_1.14.20_all.deb -- Raphael Hertzog -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]