Bug#519268: lintian: same problem in mksh, but with a twist
Thorsten Glaser <tg@mirbsd.de> writes:
> E: mksh: diversion-for-unknown-file $2 postinst:16
> E: mksh: package-uses-local-diversion postinst:24
> E: mksh: package-uses-local-diversion prerm:16
> E: mksh: orphaned-diversion $2 postinst
>
> I have the same problem (although I'm not exactly sure about
> the middle two ones, probably have to add the same --package
> which I used in creating it? on the other hand, mksh and dash
> share this, so it's even more difficult), but with a twist:
> it's dynamic.
>
> https://www.mirbsd.org/cvs.cgi/contrib/hosted/tg/deb/mksh/debian/mksh.postinst
> will show you the current "state of the art"; like I said, the
> code itself originated from dash...
The fix for the first and the last will be to just bail in Lintian if
there are variables on the dpkg-divert and not assume we know what people
are doing. I'll get that into the next release.
The middle two appear to be related to this code:
false)
if [ -n "$div" ] && [ -z "${div%%*by mksh}" ]; then
mv $distrib $2
dpkg-divert --remove $2
fi
If I remember my weird pattern substitutions correctly, you're already
checking that mksh is the owner of the diversion, so it should be
completely safe to add --package mksh to that dpkg-divert --remove
invocation. It's actually slightly safer to do so since it avoids a race
condition.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Reply to: