W dniu wto, 29.08.2017 o godzinie 16∶38 -0400, użytkownik Michael
Orlitzky napisał:
> What should happen if an ebuild calls "die" in pkg_prerm?

Horrible things, I suppose. If something started uninstalling,
and failed during uninstall the system integrity is compromised
and user needs to perform manual recovery.

> The issue arose while trying to create a package that could not be
> uninstalled except as part of an upgrade. The first thing that came to
> mind was to have it die in pkg_prerm.

This package does not belong in Gentoo. We do packaging, not some ugly
malware that prevents users from uninstalling itself. Every package must
be uninstallable. Even if it destroys my system, developers have no
right to prevent valid uninstall action from proceeding.

> What portage does is *appear* to crash, but then continue along as if
> nothing happened.

That's probably because it wants to prevent the user from being unable
to uninstall the package, e.g. if prerm partially succeeded which means
every successive invocation would fail due to some prerm actions being
done already.

> Does the PMS cover this indirectly? (Is there a reliable way to make
> package removal fail?)

No. PMS never covered shooting yourself in the foot, it's not meant to
be fool-proof and we don't have the resources to cover every possible
bad idea Gentoo developers might come up with. Or the ability to predict
their insanity.

-- 
Best regards,
Michał Górny


Reply via email to