on my box testing marked wine-any-3.21 wants to forceably upgrade media-video/ffmpeg from stable 3.3.x to the new testing marked 4.1.x branch. this is a new condition. days ago wine-any-3.21 did not had such a depency. it seems that the ffmpeg useflag of wine-any-3.21 was recently unmasked! can you guys fix that? because it breaks any further maintenance on my box!
i tried out the 4.1 version via unmasking of media-video/ffmpeg but it breaks several other packages beginning with opencv-2.4.13-r3 at compile time already so upgrading now to ffmpeg 4.1 is NOT an option for me.
this is the emerge output doing a "emerge -uvDNa world" on my box:
[ebuild U ~] media-video/ffmpeg-4.1:0/56.58.58::gentoo [3.3.6:0/55.57.57::gentoo] USE="X alsa amr amrenc bluray bs2b bzip2 cdio chromaprint encode flite fontconfig frei0r fribidi gcrypt gme gmp gnutls gpl gsm iconv jpeg2k ladspa libass libcaca libdrm%* libilbc librtmp libsoxr libv4l lzma modplug mp3 network openal opencl%* opengl openh264 opus postproc pulseaudio rubberband samba sdl snappy speex ssh svg%* theora threads truetype twolame v4l vaapi vorbis vpx wavpack webp x264 x265 xcb xvid zimg zlib zvbi (-altivec) (-appkit) -chromium -codec2% -cpudetection -debug -doc -fdk -hardcoded-tables -iec61883 -ieee1394 -jack -kvazaar -libaom% -libressl% -lv2% (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -openssl -oss -pic -srt% -static-libs -test -vdpau -zeromq (-nvenc%) (-sofalizer%)" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext sse sse2 sse3 sse4_1 sse4_2 ssse3 xop -3dnow -3dnowext -fma4" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher" VIDEO_CARDS="-nvidia%" 0 KiB
[ebuild R ~] app-emulation/wine-any-3.21:3.21::gentoo USE="X alsa cups custom-cflags d3d9 ffmpeg* fontconfig gecko gphoto2 gsm jpeg lcms ldap mono mp3 ncurses netapi nls openal opencl opengl osmesa pcap perl pipelight png pulseaudio realtime run-exes samba scanner sdl ssl staging threads truetype udev udisks v4l vaapi vkd3d vulkan xcomposite xinerama xml -capi -dos -gssapi -gstreamer -kerberos -odbc -oss -prelink (-selinux) (-test) -themes" 0 KiB
Total: 2 packages (1 upgrade, 1 reinstall), Size of downloads: 0 KiB
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:
(media-video/ffmpeg-3.3.6:0/55.57.57::gentoo, installed) pulled in by
media-video/ffmpeg:0/55.57.57= required by (kde-frameworks/kfilemetadata-5.52.0:5/5.52::gentoo, installed)
(and 14 more with the same problem)
(media-video/ffmpeg-4.1:0/56.58.58::gentoo, ebuild scheduled for merge) pulled in by
>=media-video/ffmpeg-4:=[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] required by (app-emulation/wine-any-3.21:3.21/3.21::gentoo, ebuild scheduled for merge)
NOTE: Use the '--verbose-conflicts' option to display parents omitted above
It may be possible to solve this problem by using package.mask to
prevent one of those packages from being selected. However, it is also
possible that conflicting dependencies exist such that they are
impossible to satisfy simultaneously. If such a conflict exists in
the dependencies of two different packages, then those packages can
not be installed simultaneously.
For more information, see MASKED PACKAGES section in the emerge man
page or refer to the Gentoo Handbook.
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
# required by virtual/ffmpeg-9-r2::gentoo
# required by media-video/transcode-1.1.7-r3::gentoo
# required by kde-apps/k3b-18.08.3::gentoo
# required by @selected
# required by @world (argument)
There is nothing to fix - you are mixing stable and testing.
You will need to handle this locally - either don't enable USE=ffmpeg on wine-any or get the newer ffmpeg via mixing more keywords (but the latter will mean you'll get to keyword many more things, for the versions that are fixed to work with that newer ffmpeg).
yes, i mix only testing wine-any in my stable system, because ...
- there is no stable wine-any version in portage ... not even the older ones are marked stable but in my experience there are stable as far as windows systemcall "emulation" can be ;-)
- many people like me trust winehq.org enough for delivering only high quality releases so that we can actually "enjoy" some latest "windows only (steam based) games" from time to time, for me it is the only reason using wine at all
as far as i recall ffmpeg 3.3.x and 3.4.x provided also wma audio decoding, why the sudden hard dependency to 4.1.x? the description of the ffmpeg use-flag tells only about the wma decoding stuff for using ffmpeg at all.
maybe it is also wise to rethink stabilization procedure at least for wine-any
i forgot to mention that several other packages on my qt5/kde5 box using the globaly set ffmpeg useflag ... and it is somehow sad that i eventually have to extend my portage-main-tree-useflag-bugs file in /etc/portage/package.use with another entry like "app-emulation/wine-any -ffmpeg" ... thats not a desired stable solution for many people
If you mix stable and testing, you get to deal with the resulting problems yourself. I'm sorry.
wine-any patchset for using ffmpeg probably requires the new API in ffmpeg-4 (not 4.1, but that is fine for it too). It looks like the patchset is written to only work with the new ffmpeg, not old.
As said before, you'll need to either disable ffmpeg for wine-any for now (/etc/portage/package.use), or package.accept_keywords ffmpeg-4 or 4.1 and deal with the (big) fallout from that, as many packages using ffmpeg need their ~arch version to be able to compile and work successfully against ffmpeg4.