Re: cdbs vs dh (was: uploaded first pkg: pd-motex)

2010-08-13 Thread Jonas Smedegaard

On Fri, Aug 13, 2010 at 01:58:18PM +0200, Benjamin Drung wrote:

Am Freitag, den 13.08.2010, 10:40 +0200 schrieb Jonas Smedegaard:

On Thu, Aug 12, 2010 at 11:43:51PM +0200, Benjamin Drung wrote:
Am Donnerstag, den 12.08.2010, 23:38 +0200 schrieb Jonas Smedegaard:
 [1] or agree to repackage using cdbs - I just won't you to get the 
 impression that I lured you into this: most people in the 
 multimedia team are fine with - yeah, even prefer - short-form dh, 
 it is just me being obnoxious.


I prefer dh over cdbs over long debhelper form. Are there any 
technical reasons for not using dh?


Good question. Thanks for asking!


...and your question was easy and quick to answer exactly because you 
only asked for a one-sided view, not a(n attempt at) full comparison, 
which I suspect this thread may now turn into...




CDBS is more backports-friendly (beyond backports.org too!).


That's true. Using bleeding edge packaging tools make backporting
harder.


CDBS provides routines to fetch and repackage upstream tarballs


I don't use this feature, but it could be useful.


CDBS provides routines to track copyright and licensing info of sources.


That's nice. Where do I can read more about it?


Hehe, that's actually one thing CDBS lacks: proper and up-to-date 
documentation!


...and I don't even blog about it (yet - that's one of the planned 
outcomes of the Ikiwiki work I do with my girlfriend: she slowly started 
blogging quite some time ago but I set a bar so high for myself 
regarding needed features that I still - after a couple of years 
working on it - don't feel ready).


Here's a quick intro (from my head - hope it works):

 1) Include /usr/share/cdbs/1/rules/utils.mk

 2) touch debian/copyright_hints
(else you will simply be suggested to do this at each build)

 3) build as usual

 4) copy the autogenerated debian/copyright_newhints to debian/copyright 
and verify and clean it up manually


...or what I do, and find smarter, is at 3) to a) build with maintainer 
mode enabled[1], b) manually apply patches, and c) only build the 
minimal necessary for the licensing check. Like this:


  QUILT_PATCHES=debian/patches quilt push -a
  DEB_MAINTAINER_MODE=1 debian/rules pre-build

Also, I cleanup with maintainer mode enabled, which keeps the 
debian/copyright_newhints file but tidy other noise in source:


  DEB_MAINTAINER_MODE=1 fakeroot debian/rules clean
  QUILT_PATCHES=debian/patches quilt pop -a


CDBS is less invasive - e.g. can be used with manually run dh_* 
commands


You can use override_dh_* to run a dh_* command manually.


I might be wrong, but it seems to me that with short-form dh you add 
debhelper to *every* build target, trusting it to then properly handle 
anything thrown at it.


Yes, you can then explicitly disable parts of it - for the parts that 
debhelper happens to support disabling.


What you do with CDBS is *not* enabling the parts you don't want CDBS to 
handle for you.  As the prime example, you can choose to not let CDBS 
handle your debhelper routines but add that by hand.  When I discourage 
using CDBS together with short-form dh it is because I fear debhelper 
being too intrusive and automagically taking over parts that it 
shouldn't.  I would be more than happy to be assured that this is not 
the case, and they indeed work nicely together as long as you simply do 
not include the CDBS debhelper.mk snippet.



CDBS is written in make (short-form dh somewhat reinvents make in 
Perl)


Yes, but Makefile rules can get complicated. Do you want an example? I 
like dh because it's simple.


Perl code can be complex too.  You just tend to not look at that code.

What obviously helps is documentation.  I never used documentation 
myself for CDBS, just looked at the snippets, and I agree they may look 
scary to someone not intimate in make (similar to autotools being 
disliked by many).



Kind regards,

 - Jonas


[1] DEB_MAINTAINER_MODE enables features ireelevant or even policy 
violating to do by default (e.g. on build daemons). It makes the 
copyright-check routien fail, not just warn, in case of new or changed 
copyright and licensing info - which is always the case when you've 
initially touch'ed the file.



--
 * Jonas Smedegaard - idealist  Internet-arkitekt
 * Tlf.: +45 40843136  Website: http://dr.jones.dk/

 [x] quote me freely  [ ] ask before reusing  [ ] keep private


signature.asc
Description: Digital signature
___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers


Re: cdbs vs dh (was: uploaded first pkg: pd-motex)

2010-08-13 Thread Jonas Smedegaard

On Fri, Aug 13, 2010 at 03:10:19PM +0200, Jonas Smedegaard wrote:

On Fri, Aug 13, 2010 at 01:58:18PM +0200, Benjamin Drung wrote:

Am Freitag, den 13.08.2010, 10:40 +0200 schrieb Jonas Smedegaard:


CDBS provides routines to track copyright and licensing info of 
sources.



Here's a quick intro (from my head - hope it works):

1) Include /usr/share/cdbs/1/rules/utils.mk

2) touch debian/copyright_hints
   (else you will simply be suggested to do this at each build)

3) build as usual

4) copy the autogenerated debian/copyright_newhints to 
debian/copyright and verify and clean it up manually


...or what I do, and find smarter, is at 3) to a) build with 
maintainer mode enabled[1], b) manually apply patches, and c) only 
build the minimal necessary for the licensing check. Like this:


 QUILT_PATCHES=debian/patches quilt push -a
 DEB_MAINTAINER_MODE=1 debian/rules pre-build

Also, I cleanup with maintainer mode enabled, which keeps the 
debian/copyright_newhints file but tidy other noise in source:


 DEB_MAINTAINER_MODE=1 fakeroot debian/rules clean
 QUILT_PATCHES=debian/patches quilt pop -a



Above works for dpkg source format 3.0.

For older packages using patchsys-quilt.mk do *not* invoke quilt 
manually, neither before license-check nor after cleanup.



 - Jonas

--
 * Jonas Smedegaard - idealist  Internet-arkitekt
 * Tlf.: +45 40843136  Website: http://dr.jones.dk/

 [x] quote me freely  [ ] ask before reusing  [ ] keep private


signature.asc
Description: Digital signature
___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers


Re: cdbs vs dh

2010-08-13 Thread Felipe Sateler
On 13/08/10 09:10, Jonas Smedegaard wrote:
 What obviously helps is documentation.  I never used documentation
 myself for CDBS, just looked at the snippets, and I agree they may look
 scary to someone not intimate in make (similar to autotools being
 disliked by many).

Is there a doxygen-like tool for make? I think it could then be used to
generate reference docs from the sources (which is always easier than
keeping separate documentation).

(I'm thinking this subthread should go to another list...)
-- 
Saludos,
Felipe Sateler

___
pkg-multimedia-maintainers mailing list
pkg-multimedia-maintainers@lists.alioth.debian.org
http://lists.alioth.debian.org/mailman/listinfo/pkg-multimedia-maintainers