[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to handle Debian patches

On Saturday 17 May 2008, Vincent Untz wrote:
> Le samedi 17 mai 2008, à 15:24 +0200, Pierre Habouzit a écrit :
> > On Sat, May 17, 2008 at 12:07:43PM +0000, Vincent Untz wrote:
> > > [I'm not subscribed to debian-devel, so feel free to cc me if you want
> > > to keep me in the loop]
> >
> > done.
> >
> > >  + it also seems that some debian developers would prefer the VCS way
> > >    instead of patches.debian.org. Well, if all the debian packages are
> > >    maintained with the same VCS, and it's easy to browse this from one
> > >    place, then yes. Else, if I have to use git for $a, bzr for $b, svn
> > >    for $c, hg for $d, etc., this is going to be a nightmare from my
> > >    upstream point of view. (although it'd be fine, I guess, to have
> > >    $vcs_a for $distro_a and $vcs_b for $distro_b -- the important point
> > >    is that consistency to access patches for all packages in a given
> > >    distro is key for upstream people)
> >
> >   We will never ever harmonize on one vcs in Debian. Don't dream of it,
> > it just won't work. Even Ubuntu can't do that (okay they use bzr a _lot_
> > but I know quite a few Ubuntu developers that use git instead so…).
> Sorry, my point wasn't clear: I'm not suggesting that Debian developers
> should harmonize on one vcs. I was merely saying that if multiple vcs
> are used, you shouldn't expect upstream to be happy about having to go
> to multiple places to find the patches for debian packages (unless
> all those places are integrated in some way in one unique place
> afterwards).

I absolutely agree with you. Moreover DDs still can use their favourite VCS to 
maintain their packaging, but that does not mean that upstream developers and 
debian users should be forced to follow DD everywhere. See below.

> I maintain in 5 distros, I find it more convenient to have something
> like http://patches.ubuntu.com/, http://cvs.fedoraproject.org/viewcvs/
> or http://sources.gentoo.org/viewcvs.py/gentoo-x86/ to quickly look at
> everything. (but I'd be the first to agree that this method is
> suboptimal too and that all distros could do a better job)

Ok, here is an extremely simple approach you can follow ;-). You don't need 
any special patches.d.o fancy web cruft, you don't need to know about the 
favourite VCS of any particular DD either or their favourite  
debian-patch-sys ;-). You can have the patches applied to the upstream source 
code version currently found in Debian (you are not so interested about the 
past ones, since they were merged upstream) by simply fetching debian diff.gz 
from packages.d.o/<pkg>. Now comes the most stressful part: that diff.gz 
contains the debian packaging files and the changes done to the upstream 
source code. The Debian packaging files might not be of any particular 
importance to you, but the changes applied to the upstream source are, so it 
is best having a separate diff file for any logical change to the upstream 
code being done... and you are done! If that is not the case and you find 
yourself bored while fighting with one single monster blob of multiple 
logical changes being applied in a combined fashion to the upstream tree, you 
should fall-back to debian/control at least to have a clue how to visit the 
packager's favourite VCS repo. Meantime, you might learn that there is a new 
VCS invented and you should read some docs, but you shouldn't be unlucky 
since you will finally find the patches applied to a particular upstream tree 
of yours ;-)

pub 4096R/0E4BD0AB 2003-03-18 <people.fccf.net/danchev/key pgp.mit.edu>
fingerprint 1AE7 7C66 0A26 5BFF DF22 5D55 1C57 0C89 0E4B D0AB 

Reply to: