I'm using xorg-x11 instead of xfree and when I run emerge -pv on a package, it blocks because emerge seems to prefer xfree. BUT when I do the same thing as root (directly or with sudo), the problem is gone and everything works just fine. maddin@zion maddin $ emerge -pv rdesktop These are the packages that I would merge, in order: Calculating dependencies ...done! [blocks B ] x11-base/xorg-x11 (from pkg x11-base/xfree-4.3.0-r6) [ebuild N ] x11-base/xfree-4.3.0-r6 -3dfx -3dnow -bindist -cjk -debug -doc -ipv6 +mmx +nls +pam -sdk +sse -static +truetype +xml2 67,518 kB [ebuild N ] net-misc/rdesktop-1.3.1 -debug +ssl 136 kB Total size of downloads: 67,655 kB zion maddin # emerge -pv rdesktop These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild N ] net-misc/rdesktop-1.3.1 -debug +ssl 136 kB Total size of downloads: 136 kB PS: /usr/portage/* is globally readable (didn't touch it) and: maddin@zion maddin $ groups maddin wheel audio users portage Reproducible: Always Steps to Reproduce: 1. Run emerge -pv for a package depending on virtual/x11 Actual Results: x11-base/xorg-x11 blocks x11-base/xfree-4.3.0-r6 Expected Results: emerge should display the same dependecies when run with or without root privileges. Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 Pentium III (Coppermine) Gentoo Base System version 1.4.16 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O3 -pipe -fstack-protector" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -mcpu=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox userpriv usersandbox" GENTOO_MIRRORS="ftp://gentoo.inode.at/source/ ftp://ftp.easynet.nl/mirror/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aalib apache2 apm arts artswrappersuid avi crypt cups dvd encode fbcon foomaticdb gd gdbm gif gimpprint gphoto2 gpm gtk gtk2 imlib jpeg kde libcaca libg++ libwww linguas_de mad mikmod mmx mng motif mpeg mysql ncurses nls oggvorbis opengl oss pam pdflib png pnp ppds qt quicktime readline samba sdl slang spell sqlite sse ssl svga tcpd tiff truetype trusted usb v4l v4l2 wifi wmf x86 xml xml2 xmms xv xvid zlib"
I think this is a portage problem.
permissions on /var/cache/edb, specifically the file virtuals.
You're right, chmod 644 /var/cache/edb/virtuals helps. BTW: What's /var/cache/edb/config for?
I checked another box with a more recent Gentoo installation and /var/cache/edb/* was world readable, though I haven't touched /var/cache on either machine. I tried deleting /var/cache/edb and after running emerge once, /var/cache/edb/virtuals and /var/cache/edb/world have the right permissions, but are empty, which leads to even more problems. (BTW: /var/cache/edb/config is still not world readable.)
Don't know what to say about the permissions issue. If it can be duplicated please let me know and we'll track down what causes it. config is for remembering which config files can be ignored when merging new files into CONFIG_PROTECT locations. Saves some of the repeated updates people may have to perform. Deleting virtuals isn't a good idea. 2.0.51 doesn't use that file, so you might consider using it instead. There is no cache yet, so it will complain a lot toward the end of sync. 2.0.51 also moves all state files out of /var/cache so you don't delete them by accident.