app-office/openoffice-2.0.4 failed to install with a collision-protect failure on the dictionaries provided by app-dicts/myspell-en-20060316 with FEATURES="collision-protect" Reproducible: Didn't try Steps to Reproduce: 1.emerge openoffice 2.emerge myspell-en 3.emerge openoffice Actual Results: Openoffice fails to install with a collision-protect error. Expected Results: Openoffice to install
Uhm, post the output, we need to see which files collide...
*** Bug 163889 has been marked as a duplicate of this bug. ***
I've just checked the log-files, and it doesn't seem to have logged it correctly, it just cuts off early.(grrr...) The files were the dictionary files installed by myspell-en though.
In my case: /usr/lib/openoffice/share/dict/ooo/en_AU.aff /usr/lib/openoffice/share/dict/ooo/en_AU.dic /usr/lib/openoffice/share/dict/ooo/en_CA.aff /usr/lib/openoffice/share/dict/ooo/en_CA.dic /usr/lib/openoffice/share/dict/ooo/en_GB.aff /usr/lib/openoffice/share/dict/ooo/en_GB.dic /usr/lib/openoffice/share/dict/ooo/en_NZ.aff /usr/lib/openoffice/share/dict/ooo/en_NZ.dic /usr/lib/openoffice/share/dict/ooo/en_US.aff /usr/lib/openoffice/share/dict/ooo/en_US.dic
Just to make it a little bit more complete: * checking 2721 files for package collisions 1000 files checked ... 2000 files checked ... existing file /usr/lib64/openoffice/share/dict/ooo/de_AT.aff is not owned by this package existing file /usr/lib64/openoffice/share/dict/ooo/de_AT.dic is not owned by this package existing file /usr/lib64/openoffice/share/dict/ooo/de_CH.aff is not owned by this package existing file /usr/lib64/openoffice/share/dict/ooo/de_CH.dic is not owned by this package existing file /usr/lib64/openoffice/share/dict/ooo/de_DE.aff is not owned by this package existing file /usr/lib64/openoffice/share/dict/ooo/de_DE.dic is not owned by this package * This package is blocked because it wants to overwrite * files belonging to other packages (see messages above). * If you have no clue what this is all about report it * as a bug for this package on http://bugs.gentoo.org package app-office/openoffice-2.2.1 NOT merged
(In reply to comment #0) > app-office/openoffice-2.0.4 failed to install with a collision-protect failure > on the dictionaries provided by app-dicts/myspell-en-20060316 with > FEATURES="collision-protect" > > Reproducible: Didn't try > > Steps to Reproduce: > 1.emerge openoffice > 2.emerge myspell-en > 3.emerge openoffice > > Actual Results: > Openoffice fails to install with a collision-protect error. > > Expected Results: > Openoffice to install > I had the exact same problem on 17 september 2007. Gerad.
Reassigning to the myspell-maintainer
Same problem here: * checking 3446 files for package collisions 1000 files checked ... 2000 files checked ... 3000 files checked ... * This package is blocked because it wants to overwrite * files belonging to other packages (see list below). * If you have no clue what this is all about report it * as a bug for this package on http://bugs.gentoo.org package app-office/openoffice-2.3.0 NOT merged Detected file collision(s): '/usr/lib64/openoffice/share/dict/ooo/hyph_es_ES.dic' '/usr/lib64/openoffice/share/dict/ooo/th_es_ES.dat' '/usr/lib64/openoffice/share/dict/ooo/th_es_ES.idx' Searching all installed packages for file collisions... Press Ctrl-C to Stop None of the installed packages claim the above file(s). I think that, until this bug is fixed, could be better RESTRICT collission-protect, it's really annoying have to re-emerge openoffice after hours of compilation :'( Thanks
*** Bug 193729 has been marked as a duplicate of this bug. ***
I can confirm this problem for app-office/openoffice-2.3.0 on amd64. Collides with both myspell-en and myspell-sv dictionaries. This is a bad regression from app-office/openoffice-2.2.1 which worked just fine (when upgrading from app-office/openoffice-2.2.0 with both myspell-en and myspell-sv installed).
Reassigning due to retirement
Can it at least be changed that the files in question be owned by the myspell-$language packages? As it is, the symlinks are generated when one installs (in my case) myspell-en but then equery shows that they don't belong to any package. So removing mysell-en leaves the symlinks orphaned and pointing to non-existent files.
(In reply to comment #7) > Reassigning to the myspell-maintainer Andreas, I've though on this problem today and I think the best solution for this bug will be to stop installing myspell dictionaries together with openoffice. The reasons for this are the following: 1. Even not taking into account that time normal openoffice build takes, it's not sane to have user remerge package just to install dictionary. 2. We already have mechanism in place to install this dictionaries - oodict eselect module. 3. There are plans (and even working implementation) to use same dictionaries for other applications, like firefox, thinderbird. So why to have same dictionary files in different places? Yes myspell dictionaries in the tree currently are out of date, but the reason for this is simple - previous maintainer retired, so somebody else (e.g. me) should care about them. I'm going to bump all myspell dictionaries soon and continue work on eselect module to allow configure both openoffice and thunderbird in one module... That's said, instead of eselect modules it's better to make applications use system myspell directory, like recent firefox releases do. So what do you think about dropping myspell dictionaries from OO?
(In reply to comment #13) > (In reply to comment #7) > > Reassigning to the myspell-maintainer > > Andreas, I've though on this problem today and I think the best solution for > this bug will be to stop installing myspell dictionaries together with > openoffice. The reasons for this are the following: > 1. Even not taking into account that time normal openoffice build takes, it's > not sane to have user remerge package just to install dictionary. > 2. We already have mechanism in place to install this dictionaries - oodict > eselect module. > 3. There are plans (and even working implementation) to use same dictionaries > for other applications, like firefox, thinderbird. So why to have same > dictionary files in different places? > > Yes myspell dictionaries in the tree currently are out of date, but the reason > for this is simple - previous maintainer retired, so somebody else (e.g. me) > should care about them. I'm going to bump all myspell dictionaries soon and > continue work on eselect module to allow configure both openoffice and > thunderbird in one module... That's said, instead of eselect modules it's > better to make applications use system myspell directory, like recent firefox > releases do. > > So what do you think about dropping myspell dictionaries from OO? > I think this is a wonderful idea and that's actually the reason why we did this ages ago ;) Meaning: We are already NOT installing any myspell-dictionaries anymore. All that we do is to call eselect oodict update --libdir $(get_libdir) in pkg_postinst() That is to register the available dictionaries with OOo's dictionary.lst, see myspell.eclass for more in-depth-details. The problem is: If we don't do that people who installed some dictionaries before installing OOo won't have them automatically available in OOo.
I'm not absolutely sure there is no problem with doing this, but to avoid having to recompile openoffice, after you got the collision error, you could just: - Add "/usr/lib/openoffice/share/dict/ooo" to your COLLISION_IGNORE (in "/etc/make.conf"). - Run: FEATURES="noauto" ebuild /usr/portage/app-office/openoffice/openoffice-2.4.0.ebuild qmerge (of course, using the same version number as the one you just compiled). Check man:ebuild(1) for details. It seems to work correctly for me. OpenOffice 2.4.0 is installed, and seems to run without problem (well, except some filename encoding problem, which are probablement completely independent).
(In reply to comment #14) > Meaning: We are already NOT installing any myspell-dictionaries > anymore. All that we do is to call > > eselect oodict update --libdir $(get_libdir) > > in pkg_postinst() Andreas, but that's not behaviour I'm experiencing here. For unknown reason symlinks /usr/lib/openoffice/share/dict/ooo/ru_RU.dic files are created at some point and copied inside "${D}". This means that if previous installation of openoffice does not have this files in CONTENTS (e.g. /var/db/pkg/app-office/openoffice-2.4.1/CONTENTS) but new symlinks were added with eselect oodict you'll definetly get collision-protect error. So seems that the bug in openoffice is that it should not create symlinks inside image directory (${D}) but should updated them in pkg_postint (as it does now too, but this does not works as symlinks were populated during merge phase). Could you take a look make that symlinks not to appear in ${D}? Thank you in advance.
(In reply to comment #14) > (In reply to comment #13) > > (In reply to comment #7) > > > Reassigning to the myspell-maintainer > > > > Andreas, I've though on this problem today and I think the best solution for > > this bug will be to stop installing myspell dictionaries together with > > openoffice. The reasons for this are the following: > > 1. Even not taking into account that time normal openoffice build takes, it's > > not sane to have user remerge package just to install dictionary. > > 2. We already have mechanism in place to install this dictionaries - oodict > > eselect module. > > 3. There are plans (and even working implementation) to use same dictionaries > > for other applications, like firefox, thinderbird. So why to have same > > dictionary files in different places? > > > > Yes myspell dictionaries in the tree currently are out of date, but the reason > > for this is simple - previous maintainer retired, so somebody else (e.g. me) > > should care about them. I'm going to bump all myspell dictionaries soon and > > continue work on eselect module to allow configure both openoffice and > > thunderbird in one module... That's said, instead of eselect modules it's > > better to make applications use system myspell directory, like recent firefox > > releases do. > > > > So what do you think about dropping myspell dictionaries from OO? > > > > I think this is a wonderful idea and that's actually the reason why we did this > ages ago ;) Meaning: We are already NOT installing any myspell-dictionaries > anymore. All that we do is to call > > eselect oodict update --libdir $(get_libdir) > > in pkg_postinst() > > That is to register the available dictionaries with OOo's dictionary.lst, see > myspell.eclass for more in-depth-details. The problem is: If we don't do that > people who installed some dictionaries before installing OOo won't have them > automatically available in OOo. > Except in the myspell.eclass there's a section that is commented as being legacy code for dictionaries from before myspell-* existed. And it appears that this section of code is only executed if ${MYSPELL_OOOBASE} is a dictionary that exists (MYSPELL_OOOBASE is set to /usr/lib/openoffice/share/dict/ooo). But that directory exists in a vanilla install of openoffice (at least in version 2.4.1). So then this section gets called and inside it the symlinks get generated. Unless I'm misunderstanding things.
Well, all of that shouldn't be a problem anymore for OOo 3.0: The source based version doesn't need the eselect script anymore as it now has a proper solution, where we can provide the correct paths to the myspell dicts at config-time. The binary on the other hand is a bit messed up for us, unfortunately, as it has its own fixed paths now, so practically that means we can't use the system-installed myspell dictionaries anymore. Which is a pity, but honestly: People should use the source-based version anyhow... Still: This bug should be resolved, though not quite as planned ;)
This really isn't valid anymore (see my last comment), so closing
Thanks a lot for you work! (openoffice is still building ;-))