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

Bug#1011057: lintian: Add warning if a *.postinst file does not have #DEBHELPER#



hi,

On Jun/10/2022, Axel Beckert wrote:
> Control: tag -1 +moreinfo
> 
> Hi Carles,
> 
> Carles Pina i Estany wrote:
> > Package: lintian
> > Version: 2.104.0
> […]
> > It might be useful that lintian checked that each *.postinst contains
> > the #DEBHELPER# string.
> >
> > For example, I noticed a missing #DEBHELPER# when creating a package
> > that installed a systemd service but it did not start as expected.
> 
> Lintian already has a tag named
> maintainer-script-lacks-debhelper-token for exactly that. See also
> https://lintian.debian.org/tags/maintainer-script-lacks-debhelper-token

Oops...

> The tag is though only emitted if debhelper is actually used.
> 
> If in your case the tag should have been emitted but hadn't been
> emitted, please tell us which package at which version (or commit ID)
> this happened.

I had a look at lintian's source code and realised of what happened.
(I'm testing and reading lintian v2.104.0)

I was running:
$ lintian package.deb # on the binary package

If I run:
$ lintian package.dsc

it does show the warning.

I had expected that if a service is installed (in
/lib/systemd/system/*.service) the postinst should have:
"^# Automatically added by dh_installsystemd"

But I see how is easier and more reliable to maintain lintian doing the
check in the source package (I did not realise of the difference, I
don't usually do packaging so all the tools are new for me :-) )

After opening the bug I started using salsa-ci/pipeline which does it in
the source package and I see the warning if I "break" the package.

To me the bug can be closed and sorry for the noise!

Cheers,

-- 
Carles Pina i Estany
https://carles.pina.cat


Reply to: