Re: How to cope with patches sanely
On Mon, 28 Jan 2008, Russ Allbery wrote:
> > I agree with Lars that we should move toward requiring it to work.
> What I'd like to see is a Debian source package format that supports
> essentially quilt metadata -- in other words, a series file and a set of
> patches. It's a very minor addition to the current format, and I think
> it's very close to the intention of wig&pen.
> With that source package format, everyone using quilt or simple-patchsys
> can trivially satisfy this requirement, and most uses of dpatch are
> similarly trivial. It doesn't provide all of the power of a git or bzr
> package format, but it's a lot easier to implement and I would hope easier
> to get consensus on.
> I just don't know what's involved in finally deciding on something like
> this and making it happen. We've been having this discussion for years,
> and so far we've not made a lot of forward progress. :/
I just need a clear concept that I can try to implement.
1/ it seems that we agree that patches should be applied by default
during unpack of the source archive. This means that dpkg-source might
want to know which patches are currently applied (or we could get strange
results while building the package with patches unapplied)... do we use
the same format than quilt for that (.pc directory AFAIK)?
2/ What should happen in Lars' scenario ? I suggest that dpkg compares the
tree with the theoretical tree (orig+patches) and creates one patch more
that it adds at the end of the patch serie. It would be auto-named
"debian-upload-<version>" (so that it can be auto-replaced if the same
package is built several times in a row during tests for example).
(We could maybe even have some mechanism so that NMU uploads do not change
the <src>-debian_<version>.tar.gz but instead push the changes affecting the
debian directory in that auto-generated patch too)
This shouldn't be too difficult to implement. The interesting part is
also providing support to generate that patch series using a VCS.
Le best-seller français mis à jour pour Debian Etch :