David Nusinow wrote: > Ok, this is an extremely troubling bug. The previous x11-common's postinst > gets called when the new x11-common's postinst fails with the /usr/bin/X11 > switch.
No the problem is not that the new postinst is failing (nor does dpkg do any error-unwind involving the old postinst if the new one fails). The postinst is called to error-unwind if prerm or preinst fails, and apparently (though policy doesn't seem to document this) when unpacking fails due to a file conflict, as happens here: Unpacking replacement x11-common ... dpkg: error processing /var/cache/apt/archives/x11-common_1%3a7.0.20_arm.deb (--unpack): trying to overwrite `/usr/X11R6/bin', which is also in package xcalibrate x11-common postinst warning: /usr/include/X11 symbolic link does not exist I could be wrong but I think that in an error-unwind situation dpkg always runs the new package's postinst[1]. Which makes fixing this kind of bug easier. Also, if it's helpful I can reproduce this at will. Unfortunatly the image I have that can reproduce it is arm. :-) -- see shy jo [1] The only exception being the running of the old postinst if the old prerm fails and then the new prerm's error-unwind fails.
signature.asc
Description: Digital signature