Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 70354 - font.eclass: file collision
Summary: font.eclass: file collision
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: High major (vote)
Assignee: Gentoo Fonts Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-07 07:39 UTC by Sascha Silbe
Modified: 2004-11-24 14:32 UTC (History)
0 users

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 Sascha Silbe 2004-11-07 07:39:44 UTC
If FEATURES=collision-protect is set, emerging media-fonts/corefonts-1-r2 (which uses font.eclass) will fail because it tries to overwrite /usr/share/fonts/corefonts/fonts.cache-1 (which got updated since the last install of corefonts).

A possible solution might be to update the cache in postinst instead of during installation.
Updating the cache during installation probably leads to problems if binary packages are used (different fonts installed on build host and target host), anyway.



Reproducible: Always
Steps to Reproduce:
1. FEATURES=collision-protect emerge media-fonts/corefonts

Actual Results:  
[...]
>>> Install corefonts-1-r2 into /var/tmp/portage/corefonts-1-r2/image/ category media-fonts
X
 * Creating fonts.scale & fonts.dir ...
 * Creating fontconfig cache ...
man:
prepallstrip:
strip: 
>>> Completed installing into /var/tmp/portage/corefonts-1-r2/image/

* checking 34 files for package collisions
existing file /usr/share/fonts/corefonts/fonts.cache-1 is not owned by this package
* spend 0.178764820099 seconds checking for file collisions
* 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 media-fonts/corefonts-1-r2 NOT merged




Expected Results:  
Don't install a file that does not exclusively belong to this single package. Cache files should be generated on the target system.


Gentoo Base System version 1.4.16
Portage 2.0.51-r3 (default-linux/x86/2004.0, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.9-caravan-1 i686)
=================================================================
System uname: 2.6.9-caravan-1 i686 mobile AMD Athlon(tm) XP2500+
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.14.90.0.8-r1
Headers:  sys-kernel/linux-headers-2.4.21-r1
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=athlon-xp -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/afs/C /etc/afs/afsws /etc/afs/modload /etc/gconf /etc/make.globals /etc/terminfo /etc/env.d"
CXXFLAGS="-O3 -march=athlon-xp -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache collision-protect distlocks fixpackages maketest sandbox severe sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="ftp://ftp.easynet.nl/mirror/gentoo/ http://gentoo.inode.at/ ftp://gentoo.inode.at/source/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/share/infra/work/portage-local--main--1.0"
SYNC="rsync://hybrid.sascha.silbe.org/gentoo-portage"
USE="3dnow X acl acpi afs alsa avi berkdb bitmap-fonts cdr crypt cups doc dvd encode fam flac foomaticdb gatos gdbm gif gps gtk gtk2 gtkhtml guile hbci imagemagick imap imlib ipv6 jpeg jpeg2k krb4 lcms libg++ libwww mad maildir mbox mikmod mmx monitor mpeg nas ncurses nls oggvorbis opengl pam pcmcia pdflib png postgres python qt qtmt quicktime readline samba sdl skey socks5 spell sse ssl tetex tiff truetype unicode x86 xml xml2 xosd xv zlib video_cards_radeon input_devices_synaptics linguas_en,de"
Comment 1 foser (RETIRED) gentoo-dev 2004-11-08 06:40:18 UTC
it shouldn't lead to any problems, because this is the only time the cache in this particular dir gets updated. Only if packages/users run fc-cache with '--force' it will botch, but i can't save them from that and even then, just override the collision, it's not harmful.

I see no problems with binary packaging either, the cache file is the cache for that one dir, that should be the same on any machine.
Comment 2 Sascha Silbe 2004-11-24 12:30:27 UTC
1. I have never ever run fc-cache (or similar) manually, let alone with "--force". So it's currently broken _by_ _default_.
2. Please don't close bugs as invalid before giving me any chance to comment on it. As you could see in the screenshot, it's a real issue on my system. If it's really a bug in another piece of software, it should be reassigned to the appropriate maintainer, not closed, especially not with "Resolution: INVALID".
Comment 3 foser (RETIRED) gentoo-dev 2004-11-24 14:32:14 UTC
1. we know how it is caused, we're pretty sure this won't happen on a fresh install and there is no evidence here that contradicts that assession.
2. I like to close bugs fast, open bugs that do not move are dead weight and you took your time to reply anyway. Not that there is much to reply to. Why should i leave it open if I as the responsible dev do not see it as a real bug, I do not need your approval.

Besides 1 & 2 I consider the 'collision-protect' feature as dev only (!) and not without inherit flaws (such as this one, it is not harmful if the fonts.cache is from the ebuild or from 'scratch' as i said in comment #1 already). As far as I am concerned this is a 'false positive' at best and with that I'd hoped you would respect my judgement, my last comment was conclusive enough.