Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

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 have a package that should build for all versions of Ubuntu, so I hope that Launchpad builds all of them... well, it doesn't. I submitted just using trusty in the changelog release field, and Launchpad build it for Trusty. I changed it for precise and just built for Precise. Is there a way I can use the same sources for several release target?

ffc (1.3.20140513-1) trusty; urgency=medium

  * Non-maintainer upload.
  * Moving to git.
  * Syncronized debian/* with upstream

 -- redacted <redacted@example.com>  Fri, 16 May 2014 16:15:00 -0400
share|improve this question
    
If your package has no different requirements or different build depends, you can just use the Copy packages link and copy to different Ubuntu release in Launchpad. – Rael Gugelmin Cunha Feb 16 at 19:19
up vote 2 down vote accepted

Yes and no.

There is currently no way to use dput to upload a package that builds for multiple Ubuntu releases. However, you can accomplish your goal using one of these two methods:

Create a Recipe

If you are building a package from a branch on Launchpad and you have Debian packaging, create a daily build recipe that targets the Ubuntu releases you wish to support. This is described in more detail in the latter half of this answer.

This is really the best solution since it also automates new builds every time you make a change (with a limit on one automatic build per day, although you can manually dispatch additional builds).

Upload Multiple Builds Manually

This is not an ideal solution - but it works. What you need to do to make this work is:

  • Adjust the version number in the changelog to match this format:

    [version]-1ppa1~[release]1
    

    ...where [version] is the package version and [release] is an Ubuntu release codename (like trusty, saucy, etc.).

  • Make sure the changelog is set to build the correct release. In other words, for Trusty, the first line of your changelog should look like this:

    ffc (1.3.20140513-1ppa1~trusty1) trusty; urgency=medium
    

Upload the package using dput and then repeat the two steps above for each release you want to upload packages for. You can see an example of how this works here.

share|improve this answer
    
You could probably add that the dput method requires that you upload to the ubuntu/<suite> directory, as described here. – saiarcot895 May 19 '14 at 3:55

Your Answer

 
discard

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.