[Debian-olpc-devel] python-xklavier -- Python bindings for libxklavier
Jonas Smedegaard
dr at jones.dk
Fri Apr 16 18:40:26 UTC 2010
On Fri, Apr 16, 2010 at 12:47:22PM -0400, Luke Faraone wrote:
>On 04/16/2010 11:51 AM, Jonas Smedegaard wrote:
>> You should probably include python-autotools.mk (not autotools.mk).
>> As is declaring DEB_PYTHON_SYSTEM has no affect, and quite likely the
>> binary package do not follow Python Policy properly.
>
>Done. This is not included in the version of CDBS in Lucid, so we'll
>have to backport it if we want to ship this for PPA users :(
There are two options:
a) Backport CDBS as well
b) include all(!) cdbs snippets with package
The first is IMO the most elegant (if backporting done elegantly ;-) ).
If Ubuntu policy or whatever force you to the second, I would appreciate
if doing so as a separate branch to not clutter the packaging for Debian
use. And beware that it is not enough to include python-autotools.mk
locally, as it requires recent autotools*, makefile* and core* snippets!
>> xklavier/Makefile.in needs to have ./ prepended in line 25 of
>> debian/copyright (so that it works with "find -path"). Or more
>> elegantly it can simply be removed, as "Makefile.in" covers all files
>> by that name recursively (which conversely means you should be
>> cautious to not accidentally covver too many files - prepend ./ if in
>> uncertain).
>
>Corrected. In this case, all "Makefile.in"s are under that license,
>afaict.
Yes. For Makefile.in files that's what I would do too.
But (warning: nitpicking ahead!) I would reorder the copyright file
differently to help avoid accidentally shadowing specific entries by
"jokers" like that:
1. catch-all joker, i.e. that optional file section with implicit "*"
2. any-file jokers, e.g. ./src/doodle/*
3. single-file jokers, e.g. Makefile.in
4. single files and same-dir jokers together, e.g. ./echo.[ch], ./zx*
In other words, I would split out Makefile.in as a separate file section
right below the catch-all section.
I would also separate licenses as separate sections at the bottom, even
if only used in a single file section, as it IMO improves readability.
...only after above grouping would I sort alphabetically, to ease
diff'ing (4th group) against the hints file.
>> Also, I recommend to make use of CDBS build-dependency
>> auto-resolving:
>>
>> 1. copy debian/control to debian/control.in
>> 2. edit debian/control.in to build-depend on @cdbs@ (not cdbs)
>> 3. Auto-resolve:
>> DEB_MAINTAINER_MODE=1 fakeroot debian/rules clean
>> 4. Check resulting debian/control, remove excess explicit
>> build-dependencies (e.g. debhelper), and repeat step 3.
>
>Done, and committed.
I noticed you commited a bunch of changes together. Most ideal for
others to review is if you commit each change as a separate commit. But
I get lazy too and commit multiple changes together. One thing I do
recommend, though, is to not commit auto-generated stuff together with
hand-edited changes. That makes it easier to later revert a change or
cherrry-pick across branches.
The files debian/control (when using debian/control.in),
debian/changelog (when using "git dch") and debian/copyright_hints are
sometimes auto-generated and should IMO always be commited separately
from other commits.
>> I also recommend to enable copyright-check to track new or changed
>> licensing or copyrights:
>>
>> 1. include CDBS rule utils.mk
>> 2. touch debian/copyright_hints
>> 3. Generate and preserve new hints:
>> DEB_MAINTAINER_MODE=1 debian/rules pre-build
>> mv debian/copyright_newhints debian/copyright_hints
>> 4. check that all files, copyrights and licenses in hints file match
>> those manually declared in copyright file (you may want to order the
>> contents of the copyright file similar to the hints file to ease
>> future updates with simple diff).
>
>Done. It noted some things which I missed, but also a bunch of things
>with no copyright which should have been covered by the implicit "*" in
>the first copyright declaration.
You should only use the copyright hints as, well, hints: INSTALL
contains licensing info so is catched by copyright-check, but really
isn't itself copyright-protected and should not be documented as such in
debian/copyright.
Also, I recommend to use the multi-line format, to ease diff'ing later.
And ltmain.sh (and a few others, I believe) really is dual-licensed -
have a look at e.g. the sugar-base package for inspiration.
Ant there is no short-form license in DEP5 rev. 135 named "X11". I
would use "other-X11" but am uncertain if that is actually illegal too
and only "other" is allowed (which ruins my style of putting all
licenses at the bottom).
>Anything else that needs fixing?
The binary package has an empty Conflicts: line.
Apart from all this nitpicking: No, I really like your packaging!
:-)
How is it - are you a DM or a DD now? Can you release the package on
your own officially for Debian or would you want me to do it?
- Jonas
--
* Jonas Smedegaard - idealist & Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
[x] quote me freely [ ] ask before reusing [ ] keep private
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/debian-olpc-devel/attachments/20100416/0c29b7c7/attachment.pgp>
More information about the Debian-olpc-devel
mailing list