Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 246720 - make portage more verbose on USE dependencies selection
Summary: make portage more verbose on USE dependencies selection
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Portage team
Depends on: 164457
Blocks: 155723 300071
  Show dependency tree
Reported: 2008-11-14 13:15 UTC by Vladimir Berezhnoy
Modified: 2011-02-10 10:34 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Berezhnoy 2008-11-14 13:15:29 UTC
Current portage behavior on USE dependencies selection is not obvious and can lead to user confusion

Reproducible: Always

Steps to Reproduce:
1. emerge x11-libs/qt-gui:4 with USE=-glib
2. add berkano portage overlay
3. emerge x11-misc/mountmanager

Actual Results:  
portage tries to downgrade x11-libs/qt by default
# emerge x11-misc/mountmanager 
Calculating dependencies... done! 
[ebuild     UD] x11-libs/qt-4.3.5 [4.4.2] USE="accessibility%* doc%* examples%* gif%* glib%* jpeg%* mng%* mysql%* nas%* pch%* png%* sqlite%* sqlite3%* ssl%* tiff%* xinerama%* zlib%* -cups% -debug% -firebird% -nis% -odbc% -postgres%" INPUT_DEVICES="-wacom%" 
[ebuild  N    ] x11-misc/mountmanager-0.2.5 
[uninstall    ] x11-libs/qt-test-4.4.2 
[uninstall    ] x11-libs/qt-opengl-4.4.2 
[uninstall    ] x11-libs/qt-script-4.4.2 
[uninstall    ] x11-libs/qt-dbus-4.4.2 
[uninstall    ] x11-libs/qt-xmlpatterns-4.4.2 
[uninstall    ] x11-libs/qt-assistant-4.4.2 
[uninstall    ] x11-libs/qt-qt3support-4.4.2 
[uninstall    ] x11-libs/qt-sql-4.4.2 
[blocks B     ] x11-libs/qt-core ("x11-libs/qt-core" is blocking x11-libs/qt-4.3.5) 
[blocks B     ] <=x11-libs/qt-4.4.0_alpha:4 ("<=x11-libs/qt-4.4.0_alpha:4" is blocking x11-libs/qt-qt3support-4.4.2, x11-libs/qt-script-4.4.2, x11-libs/qt-dbus-4.4.2, x11-libs/qt-assistant-4.4.2, x11-libs/qt-xmlpatterns-4.4.2, x11-libs/qt-sql-4.4.2, x11-libs/qt-gui-4.4.2, x11-libs/qt-svg-4.4.2, x11-libs/qt-test-4.4.2, x11-libs/qt-core-4.4.2, x11-libs/qt-webkit-4.4.2, x11-libs/qt-opengl-4.4.2)

Expected Results:  
Portage will show a question about possible ways to resolve dependencies:
"Package x11-misc/mountmanager depends on one of following packages: 
[1] x11-libs/qt-gui:4 (!glib dbus) <-- highlight the missing use flag
[2] =x11-libs/qt-4.3* (dbus) 
Portage will proceed with installing [2].
This will allow user to interrupt the process and make some modifications to correct portage bahaviour. Also this can be triggered by --verbose or --ask emerge arguments.
Comment 1 Vladimir Berezhnoy 2008-11-14 20:32:48 UTC
And my emerge --info

Portage 2.2_rc13 (default/linux/x86/2008.0/desktop, gcc-4.3.2, glibc-2.8_p20080602-r0, 2.6.27-zen3-home1 i686)
System uname: Linux-2.6.27-zen3-home1-i686-Intel-R-_Core-TM-2_Quad_CPU_Q6600_@_2.40GHz-with-glibc2.0
Timestamp of tree: Wed, 12 Nov 2008 20:08:01 +0000
distcc 3.0 i686-pc-linux-gnu [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.6-r1
dev-lang/python:     2.5.2-r8
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.6.2
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.3.0-r1
sys-devel/autoconf:  2.13, 2.63
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.19
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.27-r2
CFLAGS="-O2 -march=native -pipe -msse3 -fomit-frame-pointer -funroll-loops -fforce-addr -ffast-math -ftracer -finline-functions -fexpensive-optimizations -freorder-blocks"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /usr/share/hddtemp/"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-O2 -march=native -pipe -msse3 -fomit-frame-pointer -funroll-loops -fforce-addr -ffast-math -ftracer -finline-functions -fexpensive-optimizations -freorder-blocks"
FEATURES="ccache distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTDIR_OVERLAY="/usr/local/portage/layman/berkano /usr/local/portage/layman/sunrise /usr/local/portage/layman/swegener /usr/local/portage/layman/oss4 /usr/local/portage/layman/zen-overlay /usr/local/portage/layman/arcon /usr/local/portage/layman/rostov /usr/local/portage/layman/kde-crazy /usr/local/overlays/testing /home/non7top/overlays/arcon/trunk/arcon-overlay /home/non7top/overlays/arcon/trunk/arcon-testing"
USE="3dfx 3dnow 3dnowext 7zip X a52 aac acpi addbookmarks additions aften aim akode alias alsa amarok amazon amr amrwb ansi apache2 archive artswrappersuid asf ass atm autoreplace avahi bash-completion bashlogger binary-drivers bittorrent bluetooth bootsplash branding bzip2 cairo captury cdr cgi chm cisco connectionstatus contactnotes cracklib crypt css curl dbus dhcp disk-partition djvu dmi dri dts dvd dvdr dvdread eds emboss emovix enca encode evo exif expat extensions extras fam fat fbcondecor ffmpeg flac fortran ftp gammu gd gdbm geoip gif glib glitz gnokii gphoto2 gpm gstreamer gtalk gtk gzip hal hardenedphp hddtemp highlight history httpd iconv id3 ieee1394 imagemagick imlib insecure-patches isdnlog ithreads jabber javascript jfs jpeg kde kde4 kdeenablefinal kdeprefix kdexdeltas lame ldap libass libextractor libnotify lm_sensors logrotate mad matroska midi mikmod mktemp mmx mmxext mng mouse mozdevelop mozilla mp3 mp4 mpeg mplayer mudflap musicbrainz mysql mysqli nas ncurses nepomuk network nls nodoc nowlistening nptl nptlonly nsplugin ntfs ntlm nvidia obex ogg opengl openmp openntpd oscar pam passwordsave pch pcre perl pertty php plugins png ppds pppd python qt-copy qt3 qt3support qt4 quicktime rcc rdesktop readline reflection samba sasl screen sdl semantic-desktop session simplexml slang smb sndfile spell spl sqlite sqlite3 srt srv sse sse2 ssl startup-notification statistics subtitles subversion svg svnserve swat swscaler sysfs syslog taglib tcpd theora threads threadsafe tiff tordns tos translator trayicon truetype type1 unicode upnp urandom usb utempter vditool vim-syntax visualization vnc vorbis wavpack web win32codecs winbind wrapper wxwindows x264 x86 xcb xcomposite xfs xhtml xine xinetd xml xmlreader xmlrpc xmlwriter xorg xosd xpm xsl xv xvid zip 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 auth_digest authn_anon authn_dbd 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 dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="worker" ELIBC="glibc" INPUT_DEVICES="keyboard mouse ps2mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru" USERLAND="GNU" VIDEO_CARDS="radeonhd fglrx vesa"
Comment 2 Zac Medico gentoo-dev 2010-05-27 17:28:30 UTC
Since portage-2.1.6 you should get a message that looks something like this:

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  ('installed', '/', 'x11-libs/qt-4.4.2, 'nomerge') pulled in by
    >=x11-libs/qt-4.4 required by some/package-1.0

  ('ebuild', '/', 'x11-libs/qt-4.3.5', 'merge') pulled in by
    x11-libs/qt[glib] required by some/other-package-1.0
Comment 3 Sebastian Luther (few) 2010-05-27 18:02:20 UTC
(In reply to comment #2)
> Since portage-2.1.6 you should get a message that looks something like this:
>  * Error: The above package list contains packages which cannot be
>  * installed at the same time on the same system.
>   ('installed', '/', 'x11-libs/qt-4.4.2, 'nomerge') pulled in by
>     >=x11-libs/qt-4.4 required by some/package-1.0
>   ('ebuild', '/', 'x11-libs/qt-4.3.5', 'merge') pulled in by
>     x11-libs/qt[glib] required by some/other-package-1.0
I think he's more after something like the use conditional tracking I've in one of my branches.

OT: The atoms in the circular dep display probably miss an .unevaluated_atom.

Comment 4 Vladimir Berezhnoy 2011-02-10 10:34:01 UTC
This is probably fixed as I've not seen similar situations recently.