I've actually a stable 3.5.5 KDE installation (using split ebuilds). I want to switch to newer unstable versions (>=3.5.6). So i put all KDE packages in a file under /etc/portage/package.keywords/. But i've this problem: # emerge -pDNu world These are the packages that would be merged, in order: [...] [ebuild U ] kde-base/kdesktop-3.5.6-r2 [3.5.5-r1] [ebuild U ] kde-base/kdebase-kioslaves-3.5.6-r1 [3.5.5-r1] [...] [blocks B ] <kde-base/kdesktop-3.5.6-r1 (is blocking kde-base/kdebase-kioslaves-3.5.6-r1) [blocks B ] <kde-base/kdesktop-3.5.6-r1 (is blocking kde-base/kdebase-kioslaves-3.5.6-r1) Same thing if i try to upgrade from 3.5.5 to 3.5.7. I've found the source of all evils: in kdebase-kioslaves-3.5.6-r1 there's that block ( DEPEND=!<kde-base/kdesktop-3.5.6-r1). Masking this specific version of kdebase-kioslaves resolves the problem (and unmasking later after a successfull upgrade). Reproducible: Always Steps to Reproduce: 1. Be sure to have a KDE 3.5.5 installation (using split ebuilds) 2. Unmask 3.5.6 or 3.5.7 KDE packages 3. run "emerge -pDNuv world" Actual Results: Emerge fails because there's a blocked packages <kde-base/kdesktop-3.5.6-r1 (is blocking kde-base/kdebase-kioslaves-3.5.6-r1) Expected Results: emerge should upgrade world without problems # emerge --info Portage 2.1.2.7 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.5-r3, 2.6.20-gentoo-r8 i686) ================================================================= System uname: 2.6.20-gentoo-r8 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System release 1.12.9 Timestamp of tree: Wed, 27 Jun 2007 01:50:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] dev-java/java-config: 1.3.7, 2.0.32 dev-lang/python: 2.4.4-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r7 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.16 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium4 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo" CXXFLAGS="-O2 -march=pentium4 -pipe" DISTDIR="/var/tmp/distfiles" FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.tiscali.nl" LANG="it_IT.UTF-8" LC_ALL="it_IT.UTF-8" LINGUAS="it" MAKEOPTS="-j2" PKGDIR="/var/tmp/packages" PORTAGE_RSYNC_EXTRA_OPTS="--progress" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/voip /usr/portage/local/layman/gechi /usr/portage/local/layman/sunrise /usr/local/portage" SYNC="rsync://172.16.61.65/gentoo-portage" USE="X acpi alsa berkdb bitmap-fonts bzip2 cairo cdr cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode evo firefox fortran gif gpm hal iconv isdnlog jpeg jpeg2k kde kdeenablefinal kdehiddenvisibility lcms libg++ mad midi mikmod mmx mng mp3 mpeg mudflap ncurses nls nptl nptlonly ogg opengl openmp oss pam pcre pdf perl png pppd python qt3 qt3support quicktime readline reflection sdl session spell spl sse sse2 ssl svg tcpd theora tiff truetype truetype-fonts type1-fonts unicode vorbis win32codecs wmf x86 xine xml xorg xv zlib" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse penmount" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it" USERLAND="GNU" VIDEO_CARDS="vesa fbdev radeon" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Another comment: even if a user can bypass this problem through masking/umasking of =kde-base/kdebase-kioslaves-3.5.6-r1, i think that some thing must be done to make the KDE upgrade process as smooth as possible
So unmask kde-base/kdebase-kioslaves properly (i.e. the 3.5.7 version).
And the same goes for kde-base/kdesktop and whatever else.
Davide, the blocker is purposefully there, as you run into file collisions, when not unmerging the old kdesktop ebuild first (given you run your system with FEATURES+=collision-protect). So the upgrade process actually is as smooth as possible. And from a dev I'd think it's not wrong to expect to lookup why a blocker is placed on his own in the first place, instead filing an invalid bug, btw... (In reply to comment #2) > So unmask kde-base/kdebase-kioslaves properly (i.e. the 3.5.7 version). Solution is correct, but the comment is really pointless, Jacub.
How do I upgrade KDE from 3.5.0 to 3.5.7 without unmerging packages first, I need KDE on the box. I tried to edit the ebuild but it wouldn't install now: [shark s0 12:09 | ~/bin]$ sudo emerge -pv kdesktop These are the packages that would be merged, in order: Calculating dependencies |!!! Digest verification failed: !!! /usr/portage/kde-base/kdebase-kioslaves/kdebase-kioslaves-3.5.7-r1.ebuild !!! Reason: Filesize does not match recorded size !!! Got: 2118 !!! Expected: 2116 !!! Digest verification failed: !!! /usr/portage/kde-base/kdebase-kioslaves/kdebase-kioslaves-3.5.7-r1.ebuild !!! Reason: Filesize does not match recorded size !!! Got: 2118 !!! Expected: 2116 !!! All ebuilds that could satisfy "~kde-base/kdebase-kioslaves-3.5.7" have been masked. !!! One of the following masked packages is required to complete your request: - kde-base/kdebase-kioslaves-3.5.7-r1 (masked by: corruption) - kde-base/kdebase-kioslaves-3.5.7 (masked by: corruption) For more information, see MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook. (dependency required by "kde-base/konqueror-3.5.7-r2" [ebuild]) [shark s0 12:09 | ~/bin]$ sudo emerge -pv --force kdesktop usage: emerge [options] emerge: error: no such option: --force Masking either kdesktop or kde-kioslaves or both doesn't help.
When editing the ebuild the checksums of the file change. That's all the error says. Running `ebuild /usr/portage/kde-base/kdebase-kioslaves/kdebase-kioslaves-3.5.7-r1.ebuild digest` should solve that. Although what you are planning is pointless as carlo already pointed out -- please read his comment. You will have to unmerge at least ksync and kdesktop. Please see http://dev.gentoo.org/~keytoaster/kde-expat-upgrading.xml