0

I've been using the mercurial ppa, but that seems to be updated sporadically (at best) and attempts to reach the dev have failed. I'm looking at building these packages myself now.

There's also the mercurial package for Ubuntu itself; presumably this is the source even for the PPA.

I want to take the tarball from the mercurial web site and use that to create updated .deb packages.

I started by following the Packaging Guide:

bzr init-repo mercurial
bzr branch ubuntu:mercurial mercurial.dev

I downloaded the current mercurial tarball (mercurial-3.4.1.tar.gz) and used that to replace the contents of mercurial.dev. (I didn't remove any files that weren't in the tarball. So, for example, the "debian" and ".pc" directories are still there, as-they-were. I also believe it's probably not quite as simple as just putting the contents of the actual tarball into this directory, but...first things first...)

However, when I try to then create the deb (with "bzr builddeb") it's clear that there is some reference to mercurial version 3.1.2 somewhere. The opening output from the builddeb command looks like:

$ bzr builddeb
Building using working tree
Building package in normal mode
Purging the build dir: /home/jgindin/src/mercurial/build-area/mercurial-3.1.2
Looking for a way to retrieve the upstream tarball
Upstream tarball already exists in build directory, using that
Building the package in /home/jgindin/src/mercurial/build-area/mercurial-3.1.2, using debuild
 dpkg-buildpackage -rfakeroot -D -us -uc
dpkg-buildpackage: source package mercurial
dpkg-buildpackage: source version 3.1.2-2
dpkg-buildpackage: source distribution unstable
dpkg-buildpackage: source changed by Javi Merino <vicho@debian.org>
 dpkg-source --before-build mercurial-3.1.2
dpkg-buildpackage: host architecture amd64
 fakeroot debian/rules clean
dh clean --with python2,bash-completion
   dh_testdir
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/home/jgindin/src/mercurial/build-area/mercurial-3.1.2'
cp -a mercurial/__version__.py mercurial/__version__.py.save
dh_auto_clean
make[2]: Entering directory '/home/jgindin/src/mercurial/build-area/mercurial-3.1.2'

(The output continues, but seems irrelevant given that it's not understanding that I'm building 3.4.1.)

I've grep'd through the files in my local directory here looking for any reference to "3.1.2", but only find it in the "debian/changelog" file.

Can someone please point out where I've gone wrong and/or some further reference reading? I feel like I'm close......

  • The changelog is parsed to get the version, so you might want to update it: dch -i and change the new version you get to 3.4.1. That's also used to pick the source tarball, if you have one. – muru Jun 19 '15 at 21:18
  • Thanks @muru! If you make that an answer instead of a comment, I'll mark it ;-) – jgindin Jun 19 '15 at 22:13
0

The changelog is parsed to get the version, so you might want to update it:

dch -i

Change the new version you get to 3.4.1. That's also used to pick the source tarball, if you have one.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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