From portage 2.2_rc22 orc 23, I'm not pretty shure now, --depclean wants to unmerge qt even if it is required by other packages like for ex. cmake emerge --info Portage 2.2_rc26 (default/linux/amd64/2008.0, gcc-4.1.2, glibc-2.8_p20080602-r1, 2.6.29-gentoo x86_64) ================================================================= System uname: Linux-2.6.29-gentoo-x86_64-Intel-R-_Core-TM-2_CPU_T5500_@_1.66GHz-with-glibc2.2.5 Timestamp of tree: Mon, 23 Mar 2009 19:00:01 +0000 app-shells/bash: 3.2_p39 dev-java/java-config: 2.1.7 dev-lang/python: 2.5.2-r7 dev-util/cmake: 2.6.2-r1 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.4.3-r1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.63 sys-devel/automake: 1.4_p6, 1.7.9-r1, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.28-r1 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LANG="pl_PL.UTF-8" LC_ALL="pl_PL.UTF-8" LDFLAGS="-Wl,-O1" LINGUAS="pl" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/roslin /usr/portage/local/partyzantka /usr/portage/local/gfxboot_overlay" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X aac acl alsa amarok amd64 berkdb bzip2 cdr cli cracklib crypt cups dri dvd dvdr ffmpeg fortran gdbm gif gpm iconv ieee1394 isdnlog jpeg kde lm_sensors midi mmx mp3 mudflap multilib ncurses network-cron nls nptl nptlonly ogg openmp pam pcre perl png pppd python qt readline reflection samba session sndfile spl sse sse2 ssl sysfs tcpd unicode vcd vorbis xinerama xorg zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="pl" USERLAND="GNU" VIDEO_CARDS="i810 intel" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS hapek ~ # equery d qt:4 [ Searching for packages depending on qt:4... ] app-crypt/qca-2.0.0-r2 (>=x11-libs/qt-4.2.0:4) dev-util/cmake-2.6.2-r1 (qt4? >=x11-libs/qt-4.3:4) hapek ~ # >>> These are the packages that would be unmerged: sys-apps/hdparm selected: 8.9 protected: none omitted: none x11-libs/qt selected: 4.4.2 protected: none omitted: 3.3.8b-r1 sys-kernel/gentoo-sources selected: 2.6.27 protected: none omitted: 2.6.29 sys-devel/automake selected: 1.4_p6 protected: none omitted: 1.7.9-r1 1.9.6-r2 1.10.2 x11-libs/qt-svg selected: 4.4.2 protected: none omitted: none x11-libs/qt-opengl selected: 4.4.2 protected: none omitted: none x11-libs/qt-xmlpatterns selected: 4.4.2 protected: none omitted: none x11-libs/qt-test selected: 4.4.2 protected: none omitted: none x11-libs/qt-assistant selected: 4.4.2-r1 protected: none omitted: none >>> 'Selected' packages are slated for removal. >>> 'Protected' and 'omitted' packages will not be removed. Packages installed: 589 Packages in world: 130 Packages in system: 51 Required packages: 580 Number to remove: 9 Reproducible: Always Steps to reproduce: emerge --depclean
Created attachment 186362 [details] My world file
This is exactly what is supposed to happen. The qt package split into smaller component packages in the last release, and the qt:4 package is now no longer a real package (go look at it). equery doesn't do what you think it does, it just does a simple grep. Here are the lines you are interested in: qca-2.0.0-r2.ebuild: || ( x11-libs/qt-core:4 >=x11-libs/qt-4.2.0:4 ) cmake-2.6.2-r1.ebuild: qt4? ( || ( ( x11-libs/qt-core:4 x11-libs/qt-gui:4 ) >=x11-libs/qt-4.3:4 ) ) As you can see with qt-core and qt-gui, you are covered.
For more a accurate reverse dependency check than equery, use emerge -pv --depclean <atom>.
So you say what i should believe to depclean? Im still not shure that those packages are unnecessary. For example I have kadu-0.6.5.* which depends on qt-4 I believe, same as qnapi. I know that qt is now metapackage but I thought that all of those packages are required, not just few of them, especially qt-4.* package.
Yes, --depclean is very reliable. If you'd like to see reverse dependencies for all installed packages, do emerge -pv --depclean. You can query the dependency strings of an ebuild like this: portageq metadata / ebuild net-im/kadu-0.6.5.1 DEPEND RDEPEND PDEPEND You'll see that it depends on the split ebuilds like everything else does for qt-4.