Jeff Johnson wrote :
%post chattr +i `rpm -ql name`
should make the package non-upgradeable no matter what.
Nice one, "bulldozer style". Never thought of it before :-)
There is simply no way for rpm (or any rpmlib based tool) to guarantee package non-upgradeability reliably.