Bug#886925: libpsm-infinipath1: leaves alternatives after purge: /etc/alternatives/libpsm_infinipath.so.1 -> /usr/lib/libpsm1/libpsm_infinipath.so.1.16
Hi Andreas,
Thank for you for the bugreport and throughout explanation!
On 11/01/2018 13:21, Andreas Beckmann wrote:
> Package: libpsm-infinipath1
> Version: 3.3+20.604758e7-4
> Severity: important
> User: debian-qa@lists.debian.org
> Usertags: piuparts
>
> Hi,
>
> during a test with piuparts I noticed your package left unowned files on
> the system after purge, which is a violation of policy 6.8:
>
> https://www.debian.org/doc/debian-policy/#details-of-removal-and-or-configuration-purging
>
> The leftover files are actually alternatives that were installed by the
> package but have not been properly removed.
>
> While there is ongoing discussion how to remove alternatives correctly
> (see https://bugs.debian.org/71621 for details) the following strategy
> should work for regular cases:
> * 'postinst configure' always installs the alternative
> * 'prerm remove' removes the alternative
> * 'postrm remove' and 'postrm disappear' remove the alternative
Unfortunately, the latter raises the following lintian warning:
https://lintian.debian.org/tags/maintainer-script-should-not-use-update-alternatives-remove.html
Are you positive this is needed? If so, is it a bug in lintian?
> In all other cases a maintainer script is invoked (e.g. upgrade,
> deconfigure) the alternatives are not modified to preserve user
> configuration.
> Removing the alternative in 'prerm remove' avoids having a dangling link
> once the actual file gets removed, but 'prerm remove' is not called in
> all cases (e.g. unpacked but not configured packages or disappearing
> packages) so the postrm must remove the alternative again
> (update-alternatives gracefully handles removal of non-existing
> alternatives).
>
Regards,
--
Mehdi
Reply to: