Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 163881 - Openoffice fails to install with collision-protect and myspell-en installed
Summary: Openoffice fails to install with collision-protect and myspell-en installed
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal with 1 vote (vote)
Assignee: Spell checking utilities and dictionaries -- related bugs (OBSOLETE)
URL:
Whiteboard:
Keywords:
: 163889 193729 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-01-26 11:54 UTC by Robert Bridge
Modified: 2008-10-20 21:48 UTC (History)
6 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Bridge 2007-01-26 11:54:25 UTC
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
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2007-01-26 11:56:09 UTC
Uhm, post the output, we need to see which files collide...
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-01-26 12:22:30 UTC
*** Bug 163889 has been marked as a duplicate of this bug. ***
Comment 3 Robert Bridge 2007-01-26 12:30:23 UTC
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.
Comment 4 Chris Kerr 2007-07-11 21:22:08 UTC
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
Comment 5 D. Stiefe1maier 2007-07-29 01:22:22 UTC
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
Comment 6 Gerard van Vuuren 2007-09-17 22:03:17 UTC
(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.
Comment 7 Andreas Proschofsky (RETIRED) gentoo-dev 2007-09-20 07:42:36 UTC
Reassigning to the myspell-maintainer
Comment 8 Pacho Ramos gentoo-dev 2007-09-24 19:51:59 UTC
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
Comment 9 Andreas Proschofsky (RETIRED) gentoo-dev 2007-10-06 23:49:06 UTC
*** Bug 193729 has been marked as a duplicate of this bug. ***
Comment 10 Jon Severinsson 2007-10-07 10:58:06 UTC
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).
Comment 11 Kevin F. Quinn (RETIRED) gentoo-dev 2008-02-04 21:56:14 UTC
Reassigning due to retirement
Comment 12 Chris Slycord 2008-04-20 16:16:23 UTC
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.
Comment 13 Peter Volkov (RETIRED) gentoo-dev 2008-05-16 15:11:19 UTC
(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?
Comment 14 Andreas Proschofsky (RETIRED) gentoo-dev 2008-05-19 09:58:39 UTC
(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.
Comment 15 email_deleted_GqKU 2008-06-05 14:51:20 UTC
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).
Comment 16 Peter Volkov (RETIRED) gentoo-dev 2008-07-19 07:29:34 UTC
(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.
Comment 17 Chris Slycord 2008-08-13 21:00:16 UTC
(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.
Comment 18 Andreas Proschofsky (RETIRED) gentoo-dev 2008-10-16 17:54:36 UTC
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 ;)
Comment 19 Andreas Proschofsky (RETIRED) gentoo-dev 2008-10-20 20:17:54 UTC
This really isn't valid anymore (see my last comment), so closing
Comment 20 Pacho Ramos gentoo-dev 2008-10-20 21:48:38 UTC
Thanks a lot for you work! (openoffice is still building ;-))