Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I can already create duplicate repos with the same versions of debs and deb-src packages.

The problem is that I want to find the Ubuntu changes from Debian mainline (not from original source). That way I can use Debian mainline with some of the customizations that Ubuntu provides (Ubuntu does a lot of things well, but I think it is over-simplifying some things...simple example is the upcoming unity migration).

I think there is probably a tool to do this already and I can't find it. I could script it, but I would prefer not to...

share|improve this question
up vote 6 down vote accepted

If you intend to build scripts, you may want to investigate launchpadlib.

However, since I don't use launchpadlib directly, I'll give a couple pointers that hopefully illustrate the gist of manually using data provided in Launchpad to generate diffs.

Here're references for using with a web browser or bzr for an example source package, alsa-driver.

Debian unstable (Sid) is at The URI you can use with bzr is lp:debian/sid/alsa-driver

Ubuntu 10.10 (Maverick) is at The URI you can use with bzr is lp:ubuntu/maverick/alsa-driver

Then, you simply bzr diff your branches of lp:debian/sid/alsa-driver and lp:ubuntu/maverick/alsa-driver to obtain what is essentially a diff -uNr $debian_sid $ubuntu_maverick. I'm fairly certain this approach directly addresses what you seek with "Ubuntu changes from debian mainline", but it may be far easier to accomplish with existing tools involving launchpadlib.

In fact, MOTU often use something similar; you can find an overview at

share|improve this answer
Thanks for the comment. I've attempted to restructure my answer so it's more clearly split into two approaches, one mentioning the use of launchpadlib directly and another describing the process with which I'm more familiar. Regardless which approach is used, there will be some amount of scripting involved - particularly for a "distribution wide package correlation solution." – Daniel T Chen Nov 29 '10 at 19:46
understanding exactly how this works now. your post is more than adequate. thanks for the patience with a user that didn't "get it" all yet. deleted my comments about not addressing the question. I now feel you did so more than adequately. – RobotHumans Feb 4 '11 at 18:15

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.