1. Computing

Discuss in my forum

Ubuntu

By

| less ubuntu.debdiff

The lines that start with - have been removed from the Debian package, and those that start with + have been added to the Ubuntu package.

The following is what we see:

  • In debian/rules install is being used instead of cp to install the xcdroast icon. Also, there is a new line installing the .desktop file.

  • In debian/changelog the changes made are added to the changelog entry.

  • In debian/dirs usr/share/applications has been added for the install lines above to work properly.

  • xcdroast.desktop is added

Now we know how the Ubuntu source was changed. Now we need to see what has changed in the Debian sources.

debdiff xcdroast_0.98+0alpha15-1.1.dsc xcdroast_0.98+0alpha15-3.dsc > debian.debdiff less debian.debdiff

There is a lot more in this debdiff than in the last one. One way we can get a better idea of what has changed is to see what files were changed in the debdiff:

grep diff debian.debdiff

This indicates that debian/postinst, debian/rules, debian/changelog, debian/doc-base.manual, debian/control, and debian/menu were changed in the new Debian version.

Thus we can see that we need to check debian/rules to see if the Ubuntu changes were made. We can also see that debian/dirs was not changed from the old Debian version. Let us now look at the files. We can unpack the source package by using dpkg-source:

dpkg-source -x xcdroast_0.98+0alpha15-3.dsc

This will decompress the xcdroast_0.98+0alpha15.orig.tar.gz file, create a xcdroast-0.98+0alpha15 directory, and apply the changes found in xcdroast_0.98+0alpha15-3.diff.gz.

Now navigate to the debian directory:

cd xcdroast-0.98+0alpha15/debian

One can see in rules that changes made by Ubuntu were not applied to the new Debian version. This means that:

cp debian/xcdroast.xpm 'pwd'/debian/$(PACKAGE)/usr/share/pixmaps

...should be changed to:

#cp debian/xcdroast.xpm 'pwd'/debian/$(PACKAGE)/usr/share/pixmaps #install desktop and icon install -D -m 644 $(CURDIR)/debian/xcdroast.desktop \ $(CURDIR)/debian/xcdroast/usr/share/applications/xcdroast.desktop install -D -m 644 $(CURDIR)/debian/xcdroast.xpm \ $(CURDIR)/debian/xcdroast/usr/share/pixmaps/xcdroast.xpm

Now in dirs, the following line needs to be added for the .desktop file to be installed:

usr/share/applications

Now we need the actual .desktop file (saved as debian/xcdroast.desktop). From the ubuntu.debdiff (or the Ubuntu source package), we see that it is:

[Desktop Entry] Encoding=UTF-8 Name=X-CD-Roast Comment=Create a CD Exec=xcdroast Icon=xcdroast.xpm Type=Application Categories=Application;AudioVideo;

The last change that needs to be made is in changelog. Not only do we need to add what we have just done (merge with Debian), but we should also add in the previous Ubuntu changelog entries. To do this, run dch -i -D dapper and put something to the effect of:

xcdroast (0.98+0alpha15-3ubuntu1) dapper; urgency=low * Resynchronise with Debian.

Make sure to change the version number to the correct Ubuntu version. Also add:

xcdroast (0.98+0alpha15-1.1ubuntu1) breezy; urgency=low * Fix and install existing .desktop file. (Closes Malone #2698) -- Captain Packager <packager@coolness.com> Sat, 1 Oct 2005 19:39:04 -0400

between the 0.98+0alpha15-1.1 and 0.98+0alpha15-2 log entries.

Now you can build and test the new source packages. There are different ways to do this, but

  1. About.com
  2. Computing
  3. Linux
  4. Linux Distributions
  5. Popular Linux Distros
  6. Ubuntu
  7. Ubuntu Packaging Guide
  8. Ubuntu Packaging Guide - Merging Tutorial

©2014 About.com. All rights reserved.