[Pkg-fonts-devel] Bug#700341: fonts-ipafont: does not remove ttf-japanese-*.ttf alternatives on upgrades from squeeze
Andreas Beckmann
anbe at debian.org
Mon Feb 11 20:38:08 UTC 2013
Source: fonts-ipafont
Version: 00303-10
Severity: important
Tags: patch
User: debian-qa at lists.debian.org
Usertags: piuparts
Hi,
<template>
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:
http://www.debian.org/doc/debian-policy/ch-maintainerscripts.html#s-removedetails
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 http://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
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).
Note that the arguments for adding and removing alternatives differ, for
removal it's 'update-alternatives --remove <name> <path>'.
Filing this as important as having a piuparts clean archive is a release
goal since lenny.
</template>
>From the attached log (scroll to the bottom...):
0m58.7s INFO: Warning: Package purging left files on system:
/etc/alternatives/ttf-japanese-gothic.ttf -> /usr/share/fonts/opentype/ipafont/ipag.ttf not owned
/etc/alternatives/ttf-japanese-mincho.ttf -> /usr/share/fonts/opentype/ipafont/ipam.ttf not owned
/usr/share/fonts/ owned by: fonts-ipafont-mincho, fonts-ipafont-gothic
/usr/share/fonts/truetype/ owned by: fonts-ipafont-mincho, fonts-ipafont-gothic
/usr/share/fonts/truetype/ttf-japanese-gothic.ttf -> /etc/alternatives/ttf-japanese-gothic.ttf not owned
/usr/share/fonts/truetype/ttf-japanese-mincho.ttf -> /etc/alternatives/ttf-japanese-mincho.ttf not owned
Due to the package rename, the stuff in the preinst script is not being
run at all during upgrades from squeeze: fonts-ipafont-* will always be a
new install, so "$2" will be empty and all the
dpkg --compare-versions "$2" lt-nl "$someversion"
will evaluate to false.
I'll add a patch once I get the bug number. It does two things:
* Add preinst to the transitional packages to remove
the alternative there. But there is real no guarantee for the transitional
being installed at all ... but if it is installed, u-a won't emit a
diagnostic about something dangling ...
* fonts-ipafont-*.preinst: run the alternative cleanup on fresh installation
to ensure the cleanup is run even if the transitionals are not used
Please get this fixed in sid and unblocked for wheezy to fix this
upgrade problem. I also offer (and intend to) to NMU fonts-ipafont to take
care of this.
cheers,
Andreas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: otf-ipafont_00303-10.log.gz
Type: application/x-gzip
Size: 21737 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-fonts-devel/attachments/20130211/c790913d/attachment-0001.bin>
More information about the Pkg-fonts-devel
mailing list