Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 916462

Summary: Confusing error description when a missing USE flag blocks a package from being updated/rebuilt
Product: Portage Development Reporter: Eli Schwartz <eschwartz93>
Component: Core - Interface (emerge)Assignee: Portage team <dev-portage>
Status: CONFIRMED ---    
Severity: normal CC: gentoo, leho, sam
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=481628
Whiteboard:
Package list:
Runtime testing required: ---

Description Eli Schwartz 2023-10-29 04:57:31 UTC
From a user help question tonight, Sam asked me to file this bug based on an observation I had:

```
[ebuild   R   ] media-video/pipewire-0.3.80 
​
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:
​
media-video/pipewire:0
​
  (media-video/pipewire-0.3.80:0/0.4::gentoo, ebuild scheduled for merge) USE="X bluetooth dbus readline ssl systemd -doc -echo-cancel -extra -ffmpeg -flatpak -gsettings -gstreamer -ieee1394 -jack-client -jack-sdk -liblc3 -lv2 -modemmanager -pipewire-alsa -roc -sound-server (-system-service) -test -v4l -zeroconf" ABI_X86="(64) -32 (-x32)" pulled in by
    media-video/pipewire (Argument)
​
  (media-video/pipewire-0.3.80:0/0.4::gentoo, installed) USE="X bluetooth dbus readline sound-server ssl systemd -doc -echo-cancel -extra -ffmpeg -flatpak -gsettings -gstreamer -ieee1394 -jack-client -jack-sdk -liblc3 -lv2 -modemmanager -pipewire-alsa -roc (-system-service) -test -v4l -zeroconf" ABI_X86="(64) -32 (-x32)" pulled in by
    media-video/pipewire[sound-server(+)] required by (media-libs/libpulse-16.1-r2:0/0::gentoo, installed) USE="X asyncns dbus glib gtk systemd -doc (-selinux) -test -valgrind" ABI_X86="(64) -32 (-x32)"
```


The exact cause of this error and how to fix it is not immediately obvious upon reading, and a better interface (with less cognitive overhead) would be beneficial to the average user. Or at least an obvious clue which part of this information is the critical part that the user should care about.
Comment 1 Zac Medico gentoo-dev 2023-10-30 02:01:00 UTC
Maybe the same as bug 481628 which has a test case in lib/portage/tests/resolver/test_autounmask_multilib_use.py.

The idea is that this slot conflict could be translated into an autounmask package.use suggestion like:

media-video/pipewire sound-server