Does the local ppa have a higher preference when trying to satisfy build-deps

Asked by John Ferlito on 2009-04-16

If you look at it tells you where dependencies are installed from for build-deps.

It seems to indicate that the local PPA will always satisfy the build-dep even if it has a lower version although this seems not to be the case.

However it would be nice if this was possible.

eg I'm forward porting say ruby1.8.6 to intrepid (which has 1.8.7). I would then like to copy some packages into my ppa to build against this particular version. On my local machine I could simply use /etc/apt/preferences to prefer the PPA on launchpad though this is not possible

Question information

English Edit question
Launchpad itself Edit question
No assignee Edit question
Solved by:
Aaron Bentley
Last query:
Last reply:
Celso Providelo (cprov) said : #1


In your specific case, the higher version will be installed (from the ubuntu primary archive).

Launchpad buildds are not configured to prefer any candidates in case they have exactly the same version. It is indirectly determined by the order the archive dependencies are listed in the buildd 'sources_list' which is:

 1st Ubuntu primary archive (release, -security, -updates, [-backports OR -proposed])
 2nd PPA dependencies
 3rd The PPA itself

Note that if you have faced build-dep conflicts in your build, it is very likely you will have to deal with it in favor of people using your PPA, where you can not reliably control the order the repository are listed. Distinct versions using the '~ppaN' prefix are always better.

However, while discussing this condition with buildd-admins, we realized that PPA users probably expect the build-dependencies to be installed in the opposite order that we are using now: First 'local' candidates, then anything from the PPAs I trust and if it doesn't exist fallback to official packages.

Would it make more sense ?

John Ferlito (johnf-inodes) said : #2

I think the order in your last paragraph does make more sense. Although your right it mat drive users that don't use the same order a bit mad.

My use case was a bit special and I've worked around it a different way.

Best Aaron Bentley (abentley) said : #3

This is now resolved, right?

John Ferlito (johnf-inodes) said : #4

Thanks Aaron Bentley, that solved my question.