Draft - Needs testing

Copy Existing Package to new Release

E.g. copy current versions from Oneiric to Precise script from jef with hints

  • This requires you have a Launchpad account, and a valid GPG key registered with Launchpad.
  • Use the distro you want to release for to test this (and test building with debuild before upload)
  • Tools you'll need + any -dev libraries for a given package
    sudo apt-get install build-essential devscripts debhelper
  • Download the orig.tar.gz
  • Download the debian.tar.gz
  • Download the diff.gz
  • Download the dsc
  • Unpack the source
    dpkg-source -x nameofpackage.dsc
  • Update the changelog
    dch -p -D precise -l precise "launchpad build for precise"
    dch -i -D precise -l precise "launchpad build for precise" (not sure when to use -p vs -i)
  • Check what dch wrote
    head debian/changelog
  • build & sign the package
    debuild -kKeyName -S
      If the source is in the ppa/launchpad already add -sd
    debuild -kKeyName -S -sd
      dpkg-buildpackage can also be used, but then you should run dput with -l to run lintian before upload
  • push the package to launchpad
    debrelease --dput -S ppa:your-id/ppaname

Create package for release

  • Clone the source you need
    git clone
  • Download the original source and rename it
  • Update Changelog
    dch -i -D precise "launchpad build for precise"
  • Open debian/changelog and make sure the version and the log are OK
  • Verify debian/control to make sure everything is up-to-date
  • Build the package
    debuild -S -sd
    debuild -S -sa // if you really need to upload the source too
  • Test the build with pbuilder
    pbuilder-dist precise amd64 build example_1.6.0-1~precise1.dsc
  • You can also test the package with pbuilder login and install it directly from the .deb, but you will have to find a way to get the .deb on your pbuilder machine
    python -c "import SimpleHTTPServer; SimpleHTTPServer.test();" // This create a temporary webserver in the current directory
                                                                  // so you can access the file from another machine
    pbuilder-dist precise amd64 login
    dpkg -i package.deb
    // if there are dependencies missing
    apt-get install -f
  • Use dput to upload the package to launchpad
    dput ppa:ubuntugis/ubuntugis-unstable qgis_1.7.4-2~precise1_source.changes
  • You can also create the file ~/ and write :
    fqdn =
    method = ftp
    incoming = ~ubuntugis/ubuntugis-unstable/ubuntu/
    login = jlarouche // change that!
    allow_unsigned_uploads = 0
  • You can now use
    dput ubuntugis-unstable qgis_1.7.4-2~precise1_source.changes
Last modified 11 years ago Last modified on May 16, 2012, 6:45:04 AM
Note: See TracWiki for help on using the wiki.