Just a nice to have: emerging quodlibet with USE="trayicon" adds (logically) media-plugins/quodlibet-trayicon to build list. Unfortunately, portage tries to emerge the trayicon before quodlibet and fails with message "Quodlibet must have trayicon support". Reproducible: Always Steps to Reproduce: 1.add USE="trayicon" to media-sound/quodlibet 2.emerge quodlibet Actual Results: Emerge fails because quodlibet actually don't have trayicon support. Expected Results: merge should work fine solution: put trayicon in merge list after quodlibet itself workaround: using the --skip-first argument of portage to first skip trayicon and merge quodlibet with needed useflag. After that, you can emerge it's trayicon.
Can you show the output of emerge --info and emerge -pv quodlibet ? As far as I can see the ebuild properly use PDEPEND (Post-Depend) so it should merge it _after_ quodlibet. And quodlibet-trayicon properly DEPEND on quodlibet.
# emerge --info Portage 2.1.5_rc6 (default-linux/x86/2007.0, gcc-4.1.1, glibc-2.7-r2, 2.6.24-gentoo i686) ================================================================= System uname: 2.6.24-gentoo i686 Genuine Intel(R) CPU T2600 @ 2.16GHz Timestamp of tree: Tue, 06 May 2008 01:45:03 +0000 app-shells/bash: 3.2_p17-r1 dev-lang/python: 2.4.3-r4, 2.5.2-r2 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.9 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.25-r1 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/fonts/fonts.conf /etc/gconf /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=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks parallel-fetch sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://mirror.switch.ch/ftp/mirror/gentoo/ ftp://mirror.switch.ch/mirror/gentoo/ " LANG="C" LDFLAGS="" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" 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/arcon" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X a52 acl acpi alsa berkdb bluetooth branding cli cracklib crypt cups dbus dri dvd exif ffmpeg fortran gdbm gnome gnome-keyring gphoto2 gpm gstreamer gtk hal iconv ipv6 isdnlog jpeg kerberos laptop ldap libnotify mad midi mpeg mudflap nautilus ncurses networkmanager nls nptl nptlonly nsplugin openmp pam pcre perl pppd python readline reflection samba session spl ssl svg tcpd truetype unicode vcd win32codecs x264 x86 xorg xvmc zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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" 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" CAMERAS="canon" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS # emerge -pv quodlibet [ebuild R ] media-sound/quodlibet-1.0 USE="alsa dbus ffmpeg gnome hal mad trayicon -aac -esd -flac -ipod -mmkeys -musepack -oss -vorbis" 0 kB and if trayicon is not installed # emerge -pv quodlibet [ebuild N ] media-plugins/quodlibet-trayicon-3493 0 kB [ebuild R ] media-sound/quodlibet-1.0 USE="alsa dbus ffmpeg gnome hal mad trayicon -aac -esd -flac -ipod -mmkeys -musepack -oss -vorbis" 0 kB
You've got quodlibet installed already so there is no mistake in that last line.
(In reply to comment #3) > You've got quodlibet installed already so there is no mistake in that last > line. > yes, beacause i have compiled quodlibet with --skip-first to add the trayicon useflag to it. if you don't have compiled in this use flag, trayicon-applte won't compile. Again.. Should be (in my opinion): installing quodlibet with useflag "trayicon" and after quodlibet compiled, emerge of trayicon starts. Current Situation: Emerging quodlibet with trayicon fails because trayicon stops compiling, complaining "quodlibet has no trayicon support". » trayicon should always be merged AFTER quodlibet itself because you cannot install the trayicon without useflag trayicon in quodlibet, but trayicon useflag toggles quodlibet-trayicon. Thats like the circular dependencies thing ;-)
Can you still do as Diego asked in Comment #1 from situation where quodlibet or it's trayicon is not yet installed, using >=sys-apps/portage-2.1.5_rc6 which is the latest in ~arch. For reference. Then we can ask Portage devs to join the bug.
Okay, now using portage-2.1.5_rc7. Unmerged quodlibet and it's trayicon and reinstalled. Now i've found out that this was not the problem. If you write the useflags before merging it then the order is right. # emerge -av quodlibet [ebuild N ] media-sound/quodlibet-1.0 USE="alsa dbus ffmpeg gnome hal mad trayicon -aac -esd -flac -ipod -mmkeys -musepack -oss -vorbis" 0 kB [ebuild N ] media-plugins/quodlibet-trayicon-3493 0 kB My scenario was: i merged quodlibet w/o the trayicon useflag. After merge i decided to add trayicon support. Then it will look like this: # emerge -av quodlibet [ebuild N ] media-plugins/quodlibet-trayicon-3493 0 kB [ebuild R ] media-sound/quodlibet-1.0 USE="alsa dbus ffmpeg gnome hal mad trayicon* -aac -esd -flac -ipod -mmkeys -musepack -oss -vorbis" 0 kB and that's what my bug report is about. Now merging will fail with die message "media-sound/quodlibet needs trayicon support" so i suppose the order is wrong here. Workaround from Comment #1: emerge --skip-first quodlibet to add trayicon support. After that you will be able to emerge the trayicon.
+*quodlibet-trayicon-4351 (12 May 2009) + + 12 May 2009; Samuli Suominen <ssuominen@gentoo.org> + -quodlibet-trayicon-3493.ebuild, +quodlibet-trayicon-4351.ebuild: + Version bump wrt #220705, #254229 and #237578.