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

Re: Packaging Aravis for debian-astro blend



Hi Chiara,

Chiara Marmo <chiara.marmo@u-psud.fr> writes:
> so, here I am.
> My aravis version is on alioth[1]

Great! Thank you for the work! I looked at it, and found a few problems:

* in debian/control, the "Standards-Version" should be 4.1.1, not 0.6

* in debian/copyright, the first License is "LGPL-2.1+". The "+" at the
  end indicates the "or any later version" in the text below.

* in the second section of debian/copyright, change "License-Grant" to
  "License:", and add a short name for it ("Expat" seems to fit well).

* some copyrights are missing (please check if there are more):
  - the gst and gst-0.10 subdirs are copyright
     2006 Eric Jonas <jonas@mit.edu>
     2006 Antoine Tremblay <hexa00@gmail.com>
     2010 United States Government, Joshua M. Doe <joshua.doe@us.army.mil>
     2010-2011 Emmanuel Pacaud <emmanuel@gnome.org>
    and under LGPL-2+ (should therefore get its own section)
  - tools/wireshark-dissectors/packet-gvsp.c is Copyright 
     2012, AIA <www.visiononline.org>
    and GPL-2+ (and so should also get its own section)

* there should be a debian/watch file. You can check
    https://wiki.debian.org/debian/watch#GitHub
  for a recipe.

* The package seems to contain a binary and a re-usable library,
  together with files for development. This should be reflected in the
  package structure: please split it into several packages:
   - aravis-tools with the executables
   - libaravis-0.6 with the shared library,
   - libaravis-dev with the files required for development
   - gir1.2-aravis-0.6 for the typelib files

* The package description in debian/control should be extended and
  reformatted: The first line contains a one-liner with a short
  description, and the following at least 3-4 lines should explain the
  package in some detail. This should be usable for uninformed people to
  become informed what the package is for, and if they need it.
  
* The executables should be accompanied with at least a short manpage
  holding the description of the tool and the options to start it.

* The .la files should not be installed, since they are not needed and
  will cause problems. See also
  https://lintian.debian.org/tags/non-empty-dependency_libs-in-la-file.html

* The appstream metadata files should go to /usr/share/metainfo/ but
  they seem to have an old format (not sure here, I have never dealt
  with appstream).

* The files in /usr/share/doc/aravis are a bit mixed: there should be no
  additional subdir "aravis-0.6", the COPYING.gz should be removed (this
  is already handled by Debian), and the zero-length ChangeLog (and
  changelog.gz) should also be removed.

* Could you add a header to each patch in debian/patches, containing the
  following lines?
  
From: Chiara Marmo <chiara.marmo@u-psud.fr>
Subject: <short description of the patch>

  That should help other to understand who wrote the patches, and why
  are they there.

* You should also push the upstream and pristine-tar branches to alioth.

There is a very nice tool that helps to detect (potential) problems with
a package: lintian. In fact, many of the issues above I took from
there. Just run

lintian  /var/cache/pbuilder/result/aravis_0.5.10-1_amd64.changes

after the build -- there should be no errors and warnings left. If you
want to make the package even more perfect, you can add the options
"-E -I --pedantic". Then you even get (some) spelling errors, which you
can report back to upstream.

Fortunately, most of the problems can be fixed easily. If you need help
here, please ask.

Best regards

Ole


Reply to: