I have xfree 4.2.99.4 installed on my system. I'd like to perform an emerge -u world the update my system, but I often have to emerge -pu world to see the listing, and manually put the packages on the command line. This is because emerge will always try to downgrade my xfree, even when I use the -U (or --upgradeonly) flag. This (IMO) is a big problem that needs to be addressed, because sometimes I like to install masked packages, and I don't want them downgraded when I emerge -u (or -U) world. Reproducible: Always Steps to Reproduce: 1. emerge -pU world Actual Results: metal root # emerge -pU world >>> --upgradeonly implies --update... adding --update to options. These are the packages that I would merge, in order: Calculating world dependencies ...done! [ebuild UD] x11-base/xfree-4.2.1-r2 [4.2.99.4] Expected Results: It should not be trying to downgrade xfree. metal root # emerge info Portage 2.0.47-r8 (default-x86-1.4, gcc-3.2.2, glibc-2.3.1-r2) ================================================================= System uname: 2.4.20-ck2 i686 Pentium III (Coppermine) GENTOO_MIRRORS="http://mirrors.sunsite.dk/gentoo/ http://gentoo.linux.no/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo/ " CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/mp3/tmp" PORTDIR_OVERLAY="/usr/local/portage" USE="x86 oss 3dnow apm arts cups gif jpeg libg++ mikmod ncurses nls pdflib xmms xv zlib gdbm berkdb slang readline svga tcltk java guile gpm libwww esd imlib motif X gtk gnome alsa -qt -kde python perl oggvorbis opengl sdl jpg png truetype xml xml2 dvd avi aalib mpeg encode mmx sse gtkhtml quicktime pam ssl crypt tcpd mozilla mozctl spell mysql samba ldap snmp" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=pentium3 -O3 -pipe" CXXFLAGS="-march=pentium3 -O3 -pipe" ACCEPT_KEYWORDS="x86" MAKEOPTS="-j4" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" FEATURES="sandbox distcc ccache"
I have Xfree 4.3.0 installed. When doing '-up world' xfree is schedueled for downgrade. When doing -Up xfree is not schedueled for downgrade. So I cannot reproduce your exact error. However, I have installed transcode-0.6.3 and this is schedueled for downgrade even with -Up. As this is only one package I probably will just re-emerge the newer version (0.6.3).
I also get this problem: [ebuild UD] sys-devel/m4-1.4 [1.4p] .. [ebuild UD] app-text/tetex-1.0.7-r12 [2.0-r1] .. when using emerge -Up world
m4 is normal Downgrade m4 to 1.4 only, as the alpha/beta releases we were using up to now have some issues. Fix autoconf/gmp depend for this.
I'm seeing a similar behavior with two packages: # emerge -U world -p >>> --upgradeonly implies --update... adding --update to options. These are the packages that I would merge, in order: Calculating world dependencies ...done! [ebuild UD] media-libs/id3lib-3.8.0 [3.8.2] [ebuild UD] net-www/mozilla-1.2.1-r5 [1.3] I also have an interesting situation with --deep: # emerge -U --deep world -p >>> --upgradeonly implies --update... adding --update to options. These are the packages that I would merge, in order: Calculating world dependencies | !!! all ebuilds that could satisfy "dev-perl/XML-Twig" have been masked. !!! (dependency required by "dev-perl/xmltv-0.5.8" [ebuild]) !!! Problem with ebuild dev-perl/xmltv-0.5.8 !!! Possibly a DEPEND/*DEPEND problem. !!! Depgraph creation failed. I don't know if this is related or another bug.
What I found with media-libs/id3lib-3.8.0 is that 3.8.0 didn't exist any more and it wanted to go back to the latest stable version (which is probably good behavior). I don't know what was going on with mozilla.
Yep. I saw emerge try to force downgrade for ebuilds that doesn't exist anymore. Anyway, this can be an unwanted feature: I think emerge should have another option similar to -U with this add "keep my system". I mean (IE): cerrito root # emerge -UDp world >>> --upgradeonly implies --update... adding --update to options. These are the packages that I would merge, in order: Calculating world dependencies ...done! [ebuild U ] sys-apps/man-1.5l-r6 [1.5l-r5] [ebuild U ] dev-libs/glib-2.2.2 [2.2.1-r1] [ebuild U ] x11-libs/gtk+-2.2.2 [2.2.1-r1] [ebuild U ] sys-libs/slang-1.4.9 [1.4.8] [ebuild UD] media-video/transcode-0.6.4 [0.6.4.20030311] [ebuild U ] gnome-extra/gal-1.99.7 [1.99.6] [ebuild UD] gnome-extra/gconf-editor-0.4.1 [0.5.0] [ebuild U ] media-libs/gstreamer-0.6.2 [0.6.1-r1] [ebuild U ] media-libs/gst-plugins-0.6.2 [0.6.1] [ebuild U ] gnome-extra/bug-buddy-2.2.106 [2.2.104] [ebuild U ] gnome-extra/nautilus-media-0.2.2 [0.2.1] [ebuild UD] x11-misc/superkaramba-0.21 [0.26] [ebuild U ] net-libs/libsoup-1.99.23 [1.99.22] [ebuild U ] gnome-extra/libgtkhtml-3.0.5 [3.0.4] cerrito root # emerge -UDKp world >>> --upgradeonly implies --update... adding --update to options. >>> --keep force me to leave the system "as-is" These are the packages that I would merge, in order: Calculating world dependencies ...done! [ebuild U ] sys-apps/man-1.5l-r6 [1.5l-r5] [ebuild U ] dev-libs/glib-2.2.2 [2.2.1-r1] [ebuild U ] x11-libs/gtk+-2.2.2 [2.2.1-r1] [ebuild U ] sys-libs/slang-1.4.9 [1.4.8] [ebuild U ] gnome-extra/gal-1.99.7 [1.99.6] [ebuild U ] media-libs/gstreamer-0.6.2 [0.6.1-r1] [ebuild U ] media-libs/gst-plugins-0.6.2 [0.6.1] [ebuild U ] gnome-extra/bug-buddy-2.2.106 [2.2.104] [ebuild U ] gnome-extra/nautilus-media-0.2.2 [0.2.1] [ebuild U ] net-libs/libsoup-1.99.23 [1.99.22] [ebuild U ] gnome-extra/libgtkhtml-3.0.5 [3.0.4]
*** Bug 23528 has been marked as a duplicate of this bug. ***
*** Bug 25180 has been marked as a duplicate of this bug. ***
*** Bug 25573 has been marked as a duplicate of this bug. ***
I've reported bug Bug 25573 which has been marked duplicate. A few additonal notes are ACCEPT_KEYWORDS="~x86" emerge kde tries to rebuild the current version of kde not the ~x86 masked version. So it looks like a problem with masking not -U trying to force kde 2.1.3 reports that all ebuilds are masked, i've had problems with other packages (OpenOffice Binaries) and can't see any problem in the ebuilds.
This just happened to my today as well and I second this bug report. Especially for a "beginner" it can be very confusing: "why if I tell it --upgrade-only will it still to downgrade something?" Very illogical.
-U is deprecated and might be removed in future versions.