From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020625 Description of problem: I upgraded my system from 7.3 to limbo, and have just noticed I have 2 fileutils packages, fileutils-4.1-10 and fileutils-4.1.8-1. The following errors are in upgrade.log Upgrading fileutils-4.1.8-1. install-info: menu item `yes' already exists, for file `sh-utils' execution of %post scriptlet from fileutils-4.1.8-1 failed, exit status 1 Steps to Reproduce: 1. upgrade 7.3 to limbo 2. rpm -q fileutils Actual Results: Two fileutils packages Expected Results: fileutils-4.1-10 should have been replaced by fileutils-4.1.8-1
fileutils needs to conflict with sh-utils < 2.0.12, the coreutils.info file moved from one package to the other. I'm not sure if this was the reason why you had two versions of the same package installed or if this is a rpm problem. I'm reassigning to the rpm maintainer for confimation
A failed %post scriptlet can/will result in 2 database entries for a package. Fix by upgrading to a later version, or by erasing using --allmatches (tricky for fileutils), or by re-installing with --force.
*** Bug 69814 has been marked as a duplicate of this bug. ***
This is still a problem when upgrading to fileutils-4.1.9-3 and sh-utils-2.0.12-1. Probably something in the install process of one or other package should remove the obsolete sh-utils entries in the info configuration file.
More precisely, sh-utils-2.0.11-14 only runs install-info --delete in the preuninstall script if it is being removed, not if it is being upgraded. But the info entries have moved to fileutils, so need to be deleted by one of the new packages before the sh-utils.info.gz file is removed - perhaps this should happen in the sh-utils-2.0.12-x preinstall script. This would break 7.3 -> 7.3.92 -> milan upgrades, but I doubt you care about that.
If you remove the sh-utils info entries by hand, and try to re-install fileutils-4.1.9-3 you get the error install-info: menu item `wc' already exists, for file `textutils' error: execution of %post scriptlet from fileutils-4.1.9-3 failed, exit status 1 ie. the same type of crash against the textutils package.
Ditto for the old fileutils info file - the error is install-info: menu item `vdir' already exists, for file `fileutils' error: execution of %post scriptlet from fileutils-4.1.9-3 failed, exit status 1 After fixing this, fileutils finally upgraded cleanly.
*** Bug 70156 has been marked as a duplicate of this bug. ***
*** Bug 67739 has been marked as a duplicate of this bug. ***
Couldn't this be resolved by using "grep -v" to remove any lines containing "(sh-utils)", "(fileutils)" or "(textutils)" from /usr/share/info/dir? Placed in the postinstall script before the install-info command. Or would this break in some situation?
Just '|| :' on the end is sufficient for the upgrade to succeed, although of course it doesn't resolve the issue entirely. I've added '|| :' to fileutils-4.1.9-7.
goeran.se: Yes, your suggestion works, at least for me. Fixed package is fileutils-4.1.9-8.
I agree that this solution is more practical than using install-info scripts, since you don't need to co-ordinate the package installs so much, and the scripts are less complicated, particularly since the info files in 6.2 and 7.3 are in different places.
Fix confirmed with fileutils-4.1.9-11.