UDD breakdown when building orig.tar.gz from upstream VCS

James Westby james.westby at canonical.com
Wed Feb 15 16:01:45 UTC 2012


On Wed, 15 Feb 2012 08:21:37 -0500, Barry Warsaw <barry at ubuntu.com> wrote:
> I just want to put this out there for the historical record.  I think this is
> a rare enough use case that UDD doesn't need to address, certainly not any
> time soon, if ever.  OTOH, maybe there's an easy workaround.
> 
> I was working on an NBS for the fgfs-atlas package (LP: #903225).  The
> solution was straightforward enough: upstream had all the necessary fixes in
> their CVS repository, but hadn't done a release in a long time.  I twiddled
> the packaging to build an orig.tar.gz from CVS, and the googlez helped find
> some good general packaging information on how to do this.
> 
> Unfortunately, UDD is essentially useless here.  The problem is that after
> creating the tarball from CVS, `bzr bd -S` can't be used because dpkg-source
> will complain too much about deltas between the tarball and the source tree.
> It'll warn about a lot of stuff, but then fail with some unrepresentable
> changes to source.
> 
> I worked around this by unpacking the new orig.tar.gz and `cp -a` the debian/
> directory from the precise version of the package (with my changes) over into
> the unpacked tarball.  After a few rounds of tweaking, and using `debuild -S
> -sa`, I had a debian/ that built locally, so I uploaded it and will let the
> importer (hopefully) sort out the mess.
> 
> I still did all my changes to debian/ in a source branch though, because that
> made it easier to get a diff for the linked Debian bug.
> 
> Is there's a magical udd switch or config setting that would have helped me
> keep all the changes in the source branch?  It seems like this is somewhat
> similar to the merge-upstream issue when upstream has a rather large released
> tarball delta.

What's the merge-upstream issue?

I think that using merge-upstream is what should be done here, passing
it the tarball you created. That will merge in the new code, keep the
debian directory and any changes, with conflicts if necessary. Once all
that is resolved `bzr bd -S` should just work.

Of course there may be a large gulf between theory and reality :-)

Thanks,

James



More information about the ubuntu-distributed-devel mailing list