I'm getting Mercurial from this PPA: https://launchpad.net/~mercurial-ppa/+archive/releases/+packages?field.name_filter=mercurial&field.status_filter=&field.series_filter=

The Eclipse plugin MercurialEclipse (former HgEclipse) doesn't work well with version 1.9.0. How do I downgrade to 1.8.4?

I tried to follow the instructions here but aptitude versions mercurial only lists 1.9.0. When I try aptitude install mercurial=1.8.4-0ppa1, I get:

Unable to find a version "1.8.4-0ppa1" for the package "mercurial"

I'm on Ubuntu 11.04 (Natty).

[EDIT] Note that the official version (1.7.5 for Natty) is too old. I need something from the 1.8 range.

  • The instructions page is down, but nevertheless, can you see the package if you run sudo apt-cache search mercurial? – David Kuridža Jul 29 '11 at 9:26
  • Yes, I just can't select any Superseded version for installation – Aaron Digulla Jul 29 '11 at 9:39

Looking at the PPA page you can see 1.8.4 is marked as "Superseded". This means it's no longer provided by the repository. That's the reason aptitude versions mercurial isn't behaving as you'd want.

You have some options:

  1. Update: The files are still available through Launchpad. You can find the built files here. Download the debs you want. I suggest you remove the PPA at this point (per point 3) and then manually install the debs.

    enter image description here

  2. Keep using 1.9.x

  3. Install ppa-purge and purge the PPA, so you're back on 1.7.5

    sudo apt-get install ppa-purge
    sudo ppa-purge ppa:mercurial-ppa/ppa # or something like that
  4. As #3 but then find another PPA that provides 1.8.5. I suggest if you do ever find a PPA, unless it specifically says it's going to provide 1.8 eternally, that you go on to lock the version of the packages it installs.

  5. Do it yourself. Remove everything you have, purging the PPA then: download the source for 1.8, compile it, package it (checkinstall should help you there), install it and lock it.

  • Damn ... I was too slow and now, the files vanished :-( – Aaron Digulla Aug 2 '11 at 11:57

Instead of using ppa-purge, you can also do the same thing manually:

  1. Remove the offending ppa from the sources list:

    sudo apt-add-repository -r ppa:mercurial-ppa/ppa

    (The -r removes the ppa)

  2. Run sudo apt-get update

  3. Remove old mercurial version:

    sudo apt-get remove mercurial mercurial-common

  4. Install mercurial again (for natty, this will be 1.7.5):

    sudo apt-get install mercurial mercurial-common

  • Thanks for the answer. In my case, this isn't useful because 1.7.x is too old for my purposes. But maybe it'll be useful for someone else. – Aaron Digulla Jul 29 '11 at 11:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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