For some background information on Launchpad and PPA's see my previous post. For more information about information given here check out the list of links at the bottom of this post. Now on to the bullet points:
Getting Launchpad Ready
- Create a new Launchpad project.
- Have imported your PGP key to your Launchpad account (apt uses these to verify the authenticity and integrity of packages it installs).
- become an Ubuntero (i.e. you must sign the Ubuntu Community Code of Conduct)
- activate your PPA on your profile page or your team's overview page.
- Build a source package for your project.
- I followed these instructions but since we are trying to build a source package, not a binary package I made the following changes.
- Added a buildsrc target to the Makefile. See my makefile for specifics.
- Changed rules file to have a full path to the destination directory. See my rules file. I did this because Launchpad's process will be calling the rules file directly (probably via debuild) as opposed to using ghantoos's makefile which sets up the DESTDIR environment variable.
- install dput - sudo apt-get install dput
- edit ~/.dput.cf so it looks like
fqdn = ppa.launchpad.net
method = ftp
incoming = ~your-launchpad-id/ubuntu/
login = anonymous
allow_unsigned_uploads = 0
- Run dput my-ppa P_V_source.changes Replace P with the package name and V with the version number.
- Now you have to wait 5 or 10 minutes. Launchpad is spinning up a whole virtual server that will grab all the dependencies you listed using pbuilder or some such and will do a clean build of your package. An email will get sent out when your build kicks off.
- If you go look at your PPA your build will have a little spinny icon next to it. Here is my PPA site for example.
- If something goes wrong you will want to read the build logs to diagnose the problem. Click on one of the various binary builds to get to the link. Here are some sample ones from my build.
Those links I promised: