Bug#403641: tetex-base: postrm fails if just unpackaged.
Kurt Roeckx <kurt@roeckx.be> wrote:
> Package: tetex-base
> Version: 3.0.dfsg.3-3
> Severity: serious
>
> Hi,
>
> It seems that you can't uninstall the package if things aren't set up
> properly.
Hm, yes. What happens is:
- tex-common is unpacked
- tetex-base is unpacked
- the install run fails because of an unrelated package
- the buildd tries to remove the packages it just installed.
The postrm script of tetex-base assumes that it would be called with
abort-install in this case, not "remove". However, I now see in policy
that this is only used as error-unwind if the preinst fails.
This problem might actually exist in more packages, since this paragraph
from Policy:
,----
| The Depends field should also be used if the postinst, prerm or postrm
| scripts require the package to be present in order to run. Note,
| however, that the postrm cannot rely on any non-essential packages to
| be present during the purge phase.
`----
seems to imply that one *can* rely on Depended-on packages to be present
*and*configured* at "postrm remove". Presense is actually guaranteed
AFAICS, but configuredness not.
On the other hand, I'm not sure how to fix this. There's a reason why
the update-* scripts fail (with an understandable error message) when
the basic file is missing - so this shouldn't be changed. Should we
really ignore all errors of update-* in "postrm remove"?
Regards, Frank
--
Dr. Frank Küster
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX/TeXLive)
Reply to: