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

Re: Apology to the authors of helper packages



Hi,
>>"Joey" == Joey Hess <joey@kitenet.net> writes:

Joey> Manoj Srivastava wrote:
>> I have exressed what I felt lacking in the scripts before. For
>> example, none of them seems to have a dry run option. so I can see
>> what is going on without actually doing anything.

Joey> All debhelper scripts have this option.

	
>> My problem is that I think it is too easy to get dependent on these
>> scripts, and not know exactly what goes on underneath. One never
>> learns that way.

Joey> That's why all debhelper scripts have a -v option, and an
Joey> environment variable, to make them generate a listing of every
Joey> single command they run (and this is prominently marked in the
Joey> example rules files for debhelper).

	Heh. That takes care of one of my major objections to the
 helper packages. The opacity of the helpers was a major
 bugbear. Maybe it is time to install this and have another look. 

>> Second objection: The way the helper scrips are coded, amke the
>> package dependent on them; if a different version exists on a
>> target machine, the package may not build

Joey> Which is why I've introduced dh_checkversion, for those cases
Joey> where you really need a specific version of debhelper.

	How often to the interfaces to the scripts change? Is there a
 design document or something for them? (I have an uneasy feeling that
 the scripts may just have evolved, rather than being formally
 designed [nothing wrong with that -- most of my packages have evolved
 too]).

Joey> I feel source dependancies are really the way to fix
Joey> this.

	Probably.

Joey> Anyway, there are many examples of this same problem
Joey> completely unrelated to helper scripts - remember when patch's
Joey> usage changed and broke dpkg-source?

	Yes, and in some ways, one should try to reduce these external
 dependencies. Also, the problem with a multitude of scripts doing
 little tasks is that one has to learn about all the scripts and the
 arguments; (like learning a [simple] new language).

	To counter that complexity is the fact that there is a  common
 code base that can be debugged and made robust centrally; and can be
 the before-the-fact arm of policy conformance code (lintian being the
 after the fact arm)


>> The helper script generates make snippets that are called
>> ./debian/snippets/blah.dist. If I want to modify it, I copy
>> ./debian/snippets/blah.dist to ./debian/snippets/blah. The rules
>> file is changed to include ./debian/snippets/blah if it exists, or
>> else include ./debian/snippets/blah.dist.

Joey> The problem with this proposal is that as the snippets develop,
Joey> become robust, gain some features, you end up with, on average,
Joey> about 500 lines of extra stuff in debian/snippets (number
Joey> roughly based on the number of lines in debstd). Bloat. No worse
Joey> than the debian/rules.in type proposals, though.

     94 /usr/local/src/Work/angband-doc/debian/rules
     95 /usr/local/src/Work/cvs-buildpackage/debian/rules
    108 /usr/local/src/Work/miscfiles/debian/rules
    115 /usr/local/src/Work/pkg-order/debian/rules
    117 /usr/local/src/Work/libcgi-perl/debian/rules
    117 /usr/local/src/Work/sgml-base/debian/rules
    128 /usr/local/src/Work/kernel-package/debian/rules
    128 /usr/local/src/Work/psgml/debian/rules
    155 /usr/local/src/Work/vm/debian/rules
    158 /usr/local/src/Work/c2man/debian/rules
    161 /usr/local/src/Work/angband/debian/rules
    170 /usr/local/src/Work/mailagent/agent/test/rules
    172 /usr/local/src/Work/make/debian/rules
    178 /usr/local/src/Work/dist/debian/rules
    186 /usr/local/src/Work/latex2html/debian/rules
    191 /usr/local/src/Work/mailagent/debian/rules
    634 /usr/local/src/Work/kernel-package/kernel/rules

	Mean               =  171 +/- 29.9454160294
	standard deviation = 123.468113293
 Without the kernel/rules file:
	Mean               =  142.0625 +/- 8.20135596004
	standard deviation = 32.8054238401

	500 is a bit much, don't you think? These rules file do not
 use any helper packages. I'd say that the correct figure should lie
 somewhere in between 150 lines ad 500 lines. And some of that would
 be required anyway.

	However. I am unlikely to change unless there is a strong move
 to link a helper package to policy enforcement (I like my rules files
 well enough); and unless I an convinced of significant benefit to the
 process. I do feel better about the helper packages than I used to.

	manoj
-- 
 Gummidge's Law: The amount of expertise varies in inverse proportion
 to the number of statements understood by the general public.
Manoj Srivastava  <srivasta@acm.org> <http://www.datasync.com/%7Esrivasta/>
Key C7261095 fingerprint = CB D9 F4 12 68 07 E4 05  CC 2D 27 12 1D F5 E8 6E


--
E-mail the word "unsubscribe" to debian-policy-request@lists.debian.org
TO UNSUBSCRIBE FROM THIS MAILING LIST. Trouble? E-mail to listmaster@lists.debian.org


Reply to: