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

Re: bug with dh_installmenu



[ This was sent to entirely the wrong list, but I monitor all debian
email so I got it anyway. ;-) dpkg-maint, you can ignore this, it's
obviously my problem in debhelper. ]

Dan Merillat wrote:
> harik@vulpine:/tmp/DEBIAN$ less /var/lib/dpkg/info/emusic.postinst 
> # Automatically added by dh_installmenu
> if [ -x /usr/bin/update-menus ] ; then update-menus ; fi
> # End automatically added section
> 
> Files with an empty postinst get this appended.  Fix would be to
> check filesize, and add a #!/bin/sh if empty (or dosn't contain the magic
> string)

I'm pretty sure that the only way debhelper would ever do this is if the
postinst in question were not empty, but contained only "#DEBHELPER#". 

I just looked at the emusic source, and it turns out that
debian/emusic.postinst and debian/emusic.postrm both have the contents you
list above in them in the debian diff. It's was not placed there by
debhelper, unless debhelper has a severe bug I'm not aware of. Debhelper
never modifes scripts in debian/. My guess is the maintainer put it there by
mistake. 

Brian, you should probably just delete those 2 files - debhelper will notice
they arn't there, and construct proper ones in the binary package that have
the #!/bin/sh line as well as the call to update-menus. Or, you could change
the 2 files to both contain:

#!/bin/sh -e
#DEBHELPER#

BTW, the original concern about the scripts not having the hash-bang at the
top is really quite minor - the kernel will happily asssume they are shell
scripts and run them with sh. The real trouble is that they don't run with
set -e on when run that way, and also that since you're not letting
debhelper add stuff to them via a #DEBHELPER# line, you won't get the full
benefits of using debhelper. SO I reccommend you do go with one of the
fixes I outlined above.

-- 
see shy jo


Reply to: