Keith Jackson <kjack...@crimebucket.com> posted
4a32dc99.7050...@crimebucket.com, excerpted below, on  Fri, 12 Jun 2009
15:54:17 -0700:

> * Messages for package dev-texlive/texlive-latex-2008-r1:

>  * This package will overwrite one or more files that may belong to
>  * other packages (see list below).
>  *
>  * Detected file collision(s):
>  *
>  *      /var/lib/texmf/ls-R
>  *
>  * Searching all installed packages for file collisions... *
>  * Press Ctrl-C to Stop
>  *
>  * dev-texlive/texlive-basic-2008
>  *      /var/lib/texmf/ls-R

> So is there anything I can do about this? Am I correct in understanding
> there is a collision in texlive-basic and texlive-latex?

I'm not a tex user, but I use portage, and yes, your understanding looks 
correct.

Some quick comments that may or may not help:

1) There's a Gentoo TeX Live 2008 Guide, here:

http://www.gentoo.org/proj/en/tex/texlive-migration-guide.xml

Looking over the guide, a good part of it is about getting old versions 
uninstalled as apparently there's problems with that.  Thus, particularly 
if you've had earlier versions of tex/texlive installed and you're not 
already doing so, read and follow the guide.

(FWIW, I found the guide mentioned on this bug, while doing a quick bug 
check to see if the bug has already been reported.  I didn't your current 
bug bug, but the dev comment in this bug stresses the importance of 
following the guide BEFORE the upgrade if you've had a previous install, 
because apparently otherwise it gets a bit messy.
http://bugs.gentoo.org/show_bug.cgi?id=266305#c1 )

2)  Sometimes with package collisions, the conflicting package may have 
already been updated to remove the conflict, possibly without a revision 
bump.  Thus, remerging the other package and trying again sometimes works.

3)  If you've been smart, you're running with FEATURES=buildpkg, and as 
the binpkg is created before actually trying the installation, even if it 
didn't get installed due to the collision, the binpkg was already 
created.  It's thus often possible to skip the build stages and simply 
emerge -k the binpkg once you take care of the collision (by deleting the 
file if you decide it's safe, or if rebuilding the other package took 
care of it).

4)  If the file's a config file, script, or otherwise human readable, you 
can compare the various versions (what's installed compared against the 
version in each of the binpkgs -- binpkgs are simply bzip2-ed tarballs 
with some extra data tacked on the end so you can open them in your usual 
tarball browsing utility and/or extract individual files manually) to 
figure out if you can safely overwrite it or if they are too different.  
Of course, for icons and the like it's also a fairly simple choice, but 
it may not be so for say binary executables, etc.

5) If you aren't using FEATURES=buildpkg, you can at least check the 
installed version against the version in the the fake-install dir where 
portage put it previous to trying to merge to the live system.

6) Again if you're using buildpkg and have the other package as a binpkg, 
even if the colliding files are different it's reasonably safe to simply 
delete the existing colliding version (assuming it's not a config file 
you've spent a lot of time modifying, or something system-critical like 
part of glibc), since if they're not functionally the same and you need 
the other one, you can always extract the old version from the binpkg 
tarball if you decide you need it.

This of course is part of what I'm talking about all those times when I 
mention how nice binpkgs are for troubleshooting and the like, and why I 
call FEATURES=buildpkg my favorite under-advertised portage power-user 
feature. =:^)

7)  You can also avoid the collision being fatal (with portage then 
overwriting the colliding files) by using FEATURES=-collision_protect 
emerge <pkg>.  (I don't remember if this works with the binpkg or not, 
however, as I'm not sure if portage will let you modify the features it 
was built with for installation, and I've only had a few collision-
protects to worry about.)  It'll still warn about the collision, but 
it'll go ahead and install anyway if collision-protect is off.

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman


Reply via email to