The ebuild 'app-arch/rpm-4.2.1.ebuild' depends on '>=dev-libs/beecrypt-3.1.0-r1' The ebuild 'dev-libs/beecrypt-3.1.0-r1' depends on '!<app-arch/rpm-4.2.1' (blocks) Reproducible: Always Steps to Reproduce: 1. emerge -p rpm Actual Results: These are the packages that I would merge, in order: Calculating dependencies ...done! [blocks B ] <app-arch/rpm-4.2.1 (from pkg dev-libs/beecrypt-3.1.0-r1) [ebuild N ] dev-libs/beecrypt-3.1.0-r1 [ebuild U ] app-arch/rpm-4.2.1 [4.2_pre069] Expected Results: These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild N ] dev-libs/beecrypt-3.1.0-r1 [ebuild U ] app-arch/rpm-4.2.1 [4.2_pre069] Portage 2.0.49-r15 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r3, 2.4.22-ck2) ================================================================= System uname: 2.4.22-ck2 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.4.3.10 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O2 -pipe -fomit-frame-pointer -frename-registers" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/confi g /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb" CONFIG_PROTECT_MASK="/etc/init.d /etc/make.globals /etc/gconf /etc/env.d" CXXFLAGS="-march=pentium3 -O2 -pipe -fomit-frame-pointer -frename-registers" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://mirrors.tds.net/gentoo ftp://ftp.ussg.iu.edu/pub/linux/ge ntoo ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo http://www.gtlib.cc.gatech.edu/pub /gentoo http://212.219.247.16/sites/www.ibiblio.org/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://mirror/gentoo-portage" USE="x86 oss crypt cups foomaticdb gif jpeg mad mpeg ncurses nls pdflib png spel l truetype xml2 xmms zlib alsa gdbm berkdb slang readline svga mysql X sdl tcpd pam libwww ssl python imlib oggvorbis gtk motif opengl ldap cdr acpi acpi4linux dga dillo dnd emacs emacs-w3 gtk2 gtkhtml imap java javascript jbig lcms maildir mbox mcal mmx mozilla neXt pic ppds samba sasl sse tiff usb wmf -apm -arts -avi -encode -gpm -kde -gnome -libg++ -mikmod -qt -quicktime -xv -perl -esd"
so do emerge -C rpm && emerge rpm This is correct, beecrypt only blocks the old rpm, not the new one. !<app-arch/rpm-4.2.1 is used not !<=app-arch/rpm-4.2.1 ( which would be the bug) This is the intended result, portage just cannot handle it automatically. Blocking ebuilds which provide the same files is standard practice.
Aha. Understood. It might be helpful for me to mention that my confusion arose because I did not notice the "<" symbol, on the line notifying me of the "block", and I thought rpm-4.2.1 was being blocked. Perhaps it would be helpful if portage displayed each affected package instead: [blocks B ] app-arch/rpm-4.2_pre069 (from pkg dev-libs/beecrypt-3.1.0-r1) instead of: [blocks B ] <app-arch/rpm-4.2.1 (from pkg dev-libs/beecrypt-3.1.0-r1) Just a thought. Thanks for your help.