Trying to emerge www-client/seamonkey-2.7.1 after having installed www-client/seamonkey-bin-2.7.1 (or vice versa) results in the following error after 4 to 5 hours of compiling: * package www-client/seamonkey-2.7.1 NOT merged * * Detected file collision(s): * * /usr/lib/seamonkey/plugins TEMPORARY WORK AROUND A temporary work around is to remove FEATURE="collision-protect" from /etc/make.conf or: FEATURES="-collision-protect" emerge seamonkey Also, if you're lucky like I am and you create binary packages (FEATURES="buildpkg"), then you can still save yourself from another 4 to 5 hours of recompiling by installing the created binary package of the recent failed emerge with: # emerge -G seamonkey
1) Please post your `emerge --info' output in a comment. 2) What other package claims to own that directory? Please attach the entire build log to this bug report.
# emerge -C www-client/seamonkey && emerge www-client/seamonkey-bin * This action can remove important packages! In order to be safer, use * `emerge -pv --depclean <atom>` to check for reverse dependencies before * removing packages. www-client/seamonkey selected: 2.7.1 protected: none omitted: none All selected packages: www-client/seamonkey-2.7.1 >>> 'Selected' packages are slated for removal. >>> 'Protected' and 'omitted' packages will not be removed. >>> Waiting 5 seconds before starting... >>> (Control-C to abort)... >>> Unmerging in: 5 4 3 2 1 >>> Unmerging www-client/seamonkey-2.7.1... * One or more symlinks to directories have been preserved in order to * ensure that files installed via these symlinks remain accessible: * * /usr/lib/seamonkey/plugins * * GNU info directory index is up-to-date. 0 ;-) And then emerging seamonkey-bin is successful, but seems to break with the above file collision error when emerging the source based seamonkey due to FEATURE="collision-protect" I'm going to guess, Portage is preserving any remaining sub-folders within the install folder. Maybe the source based seamonkey ebuild should somehow have a collision protect ignore on this link. (guessing) Again, if you are not using FEATURE="collision-protect", you won't see this error as the symlink will simply be overwritten.
Think I've traced this back to nsplugins.eclass in which share_plugins_dir function was added to Portage. (Mon Nov 2Mon Nov 21 16:31:49 2011 UTC by anarchy) Portage version here and merge/update date are: =sys-apps/portage-2.1.10.44 (11:55:58 AM 01/29/2012) But looking at the seamonkey-2.7.1 ebuild, this pre-install script should take care of this. pkg_preinst() { declare MOZILLA_FIVE_HOME="${ROOT}/usr/$(get_libdir)/${PN}" if [ -d ${MOZILLA_FIVE_HOME}/plugins ] ; then rm ${MOZILLA_FIVE_HOME}/plugins -rf fi } I wonder if I'm getting the entire error at this point... maybe emerge -q (quiet) is quieting a failed 'rm'/'dir not found'. I'm going to rerun this compile tonight without -q.
This actually is gonna effect everything from icecat to seamonkey, it appears to be a change in portage has nothing to do with the nsplugin.eclass change.
This should be fixed with the latest portage, please give it a spin after upgrading to sys-apps/portage-2.1.10.49 if this resolve the problem please report back. Either way we will work to find a solution to keep a clean build system.
I have actually tested firefox/thunderbird/icecat and seamonkey all work as expected again after portage upgrade.