[Pkg-crosswire-devel] Some notes on using bzr-builddeb

Dmitrijs Ledkovs dmitrij.ledkov at gmail.com
Mon Apr 27 03:43:23 BST 2009


Bzr-builddeb has some nice features for not only building packages but
merging new upstream releases, previous debian packages and nmu's as
well as packaging straight from upstream svn.

So in stead of doing:

 32. By Jonathan Marsden  on 2009-04-13

    Remove yet more files from older source tarball
31. By Jonathan Marsden on 2009-04-13

    Remove more files from older source tarball
30. By Jonathan Marsden on 2009-04-13

    Remove include.apocrypha.h (from older source version)

it is possible to do this:

bzr merge-upstream --version 1.6~rc1 --distribution ubuntu/debian \
                              --package sword ../sword-1.6.RC1.tar.gz

This will

1) do all the heuristics of adding/deteleting/modifying code in the
working directory such that it matches verbatim the release.
2) It will do a commit " * Imported upstream version so and so".
3) Tag that commit.
4) Copy the upstream tarball to the ../tarballs (or whereever you told
bzr bd to put tarballs).
5) Renames the upstream tarball to the match version you specified eg
sword_1.6~rc1.orig.tar.gz

and then it will top the cake by calling dch with the new version
number to start changelog.

Also I've recently started to use debcommit a lot so my workflow now
looks like this:

1) dch -a
2) add a new changelog enty (Just one, unlike before....)
3) do the change
4) bzr bd --quick (to do debuild), bzr bd (pdebuild), lintian, etc
5) debcommit

Debcommit figures out what new changelog entry was added and commits
your change with that message.
This way debian/changelog is mapped to bzr log commits and you only
need to write changelog entries once.


-- 
With best regards


Dmitrijs Ledkovs (for short Dima),
Ледков Дмитрий Юрьевич




More information about the Pkg-crosswire-devel mailing list