Packaging

Revision 2 as of 2008-11-24 22:27:17

Clear message

This guide tries to explain packaging from the point of view of a Java developer.

Note to Debian / Ubuntu wizard: please help me correct this guide in relation to Debian packaging guidelines.

Prerequisites

  sudo apt-get install build-essential cdbs debhelper devscripts unzip bzr ant
  • create a working directory
  • cd into that directory

Packaging

Before you package a library or program

  • check the extension license for main, universe suitability.
  • check if the library or program was already packaged in Debian or Ubuntu (search http://packages.debian.org/ or search in Synaptic)

  • if it was not created before, create a new project in Launchpad. If you are packaging a pure library (no main() method), call it lib<name>-java. If it's a program, use its lowercase name.

Packaging Procedure

Common steps

  • create an upstream branch in the project on Launchpad. Be sure to check for a license file. In case there's none, contact upstream. For projects that distribute sources with a build-system/build-command this should be an import of the release you want to package. Replace the $NAMES with your own values of course!
    cd directory-with-upstream-sources
    bzr init
    bzr add .
    bzr commit -m "* import of upstream source (vVERSION.INFO)"
    bzr push bzr+ssh://$LAUNCHPAD_ID@bazaar.launchpad.net/~$LAUNCHPAD_ID/$PROJECT/$PROJECTNAME.upstream 
  • create a packaging branch derived from the upstream branch you just imported
    bzr branch http://bazaar.launchpad.net/~$LAUNCHPAD_ID/$PROJECT/$PROJECTNAME.upstream $PROJECTNAME.ubuntu