Patch systems in packages

Stephan Hermann sh at
Wed Aug 20 07:14:09 BST 2008

On Wed, Aug 20, 2008 at 07:23:27AM +0200, Reinhard Tartler wrote:
> Phillip Susi <psusi at> writes:
> > If you run into a package that does not already have some kind of
> > patch system there are 2 possibilities:
> >
> > 1)  The package has never needed to be patched before
> > 2)  The package has been patched by directly modifying the original
> > upstream files, which is a big no-no
> >
> > In the second case, the package should be fixed and the upstream debian
> > maintainer notified and asked to repair their broken package as well.
> In that case, I kindly ask you to not touch any of the package I
> maintain in debian. I very much prefer managing patches to sources using
> a VCS, and adding patch system adds unnecessary noise in the debdiff.
> I really wonder who brought up the (wrong) claim that *not* using a
> patch system was deprecated in the first place.

I think the problem is, that many people don't know, that debian
source packages do have this diff.gz handling, which is also a "patch"
system. Not the best one, but actually it works.

A debianized source tree (with debian/ already applied) can be changed
outside debian/ dir and those changes are going in the resulting
diff.gz. No orig.tar.gz source is being touched.

I do the same...a source package which doesn't have a patch system (like
dpatch, cdbs-simple-patchsys, quilt, or even dokos python patch system
,-)) applied, will go with diff.gz. Or, if it's possible and I have the
time, I'll get a VCS branch and do what the debian maintainer did.

As Lars said, we have everything in place...

Only packages I introduced in Ubuntu will have explicit patch system in
future (like I did now e.g. for zend-framework). So others and
especially I can track the patches I applied from upstream.


Stephan '\sh' Hermann		| OSS Developer & Systemadministrator
JID: sh at	|
GPG ID: 0xC098EFA8		|
3D8B 5138 0852 DA7A B83F  DCCB C189 E733 C098 EFA8

More information about the Ubuntu-motu mailing list