[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Beginners packaging example from Debian Med sprint: pyhmm

[For those beginners who would like to follow the explanation I'm
 talking about what you get when your do

 dget http://www.biocomp.unibo.it/piero/debpackages/pyhmm/pyhmm_0.1+20120123-3.dsc

Hi Piero,

after my first longish mail about pscoils I think I could be less
verbose in this case.  The first thing I would like to mention here that
I would suggest to talk to upstream (so please change your hats ;-)).
The tarball contains a directory trunk - nothing what you usually see in
a released tarball.  Moreover it also contains a lot of .svn
directories.  An

    find . -name ".svn" -type d | xargs rm -rf

seems to be necessary before building the tarball to remove unwanted
stuff in the release tarball.

A further thing inside the tarball are *.pyc files.  Having these inside
a tarball is asking for trouble because the clean target cleans these
files and thus your unpackages sourse tree will differ from the tarball
after cleaning up.  So I would also advise to  remove these and finally
things like .Sort_HMM.py.swp and remainings of LaTeX builds should be
stripped as well.

Basing your further packaging on a tarball cleaned up in the described
manner and regarding the hints I gave in my previous mail will most
probably lead you to a close to finished package.

One question remains regarding the changelog:  You are using "-3" as
current Debian version.  I would love to see if we start Ubuntu (or
whereever targeting versions that are released *before* the first Debian
package in a way that the version numbers of the other releases are
lower than "<upstream-version>-1".  Even if not striktly necessary it is
a good idea to have the first released Debian package a package version
number "<upstream-version>-1".  You can choose for instance:


or something like this.  You can check the proper version number relation
using for instance:

 $ dpkg --compare-versions 0.1+20120123-0~oneric lt 0.1+20120123-1; echo $?

so this is OK.  More examples:

 $ dpkg --compare-versions 0.1+20120123-1~oneric lt 0.1+20120123-1; echo $?
 $ dpkg --compare-versions 0.1+20120123-1+oneric lt 0.1+20120123-1; echo $?

... so '~' is lower than no appendix while '+' is larger.

I'm not fully sure whether you really intended to increase the version
numbers really.  I'm just mentioning it here as a general statement.  As
a further general statement:  There is no point in having a lot of
changelog entries *before* the first release which is uploaded to some
public place except you want to inform some coworker inside the Debian
team about important changes - but this can be done in Vcs anyway.  In
short:  It makes sense to have the first upload to official Debian
mirror with one singular changelog entry concerning one singular
upstream release which says:

    Initial upload (Closes #????)

That's all.  The history of Debian changes usually beginns *after* the
first upload to Debian and not before.

The only comment I have to predcchmm is rather a question:  Are these

  $ find . -name "mod*.mod"

Some files which can be recreated and do not really belong to the source
tarball?  Everything else said in my first mail applies similarly to
this package.

I did not yet commited the packaging to SVN - just do it yourself after
polishing it according to my hints.

Kind regards and thanks again for your work


Reply to: