Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 493256 - app-emulation/emul-linux-x86-soundlibs-20131008-r2 with abi_x86_32 pulls in pulseaudio
Summary: app-emulation/emul-linux-x86-soundlibs-20131008-r2 with abi_x86_32 pulls in p...
Status: RESOLVED CANTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Multilib team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-12-03 19:01 UTC by Mark
Modified: 2013-12-05 14:09 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark 2013-12-03 19:01:30 UTC
On my system, the latest souldlibs pulls in pulseaudio.  Assuming I uncheck gtk (which is gtk-3),


 ~ # emerge -av emul-linux-x86-soundlibs

These are the packages that would be merged, in order:

Calculating dependencies... done!

!!! All ebuilds that could satisfy "x11-libs/gtk+:3" have been masked.
!!! One of the following masked packages is required to complete your request:
- x11-libs/gtk+-3.8.7::gentoo (masked by: package.mask)
- x11-libs/gtk+-3.8.6::gentoo (masked by: package.mask)
- x11-libs/gtk+-3.6.3-r3::gentoo (masked by: package.mask)
- x11-libs/gtk+-3.4.4::gentoo (masked by: package.mask)

(dependency required by "media-sound/pulseaudio-4.0-r1[gtk]" [ebuild])
(dependency required by "app-emulation/emul-linux-x86-soundlibs-20131008-r2[abi_x86_32,pulseaudio]" [ebuild])
(dependency required by "emul-linux-x86-soundlibs" [argument])
For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.

~ # equery u emul-linux-x86-soundlibs
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for app-emulation/emul-linux-x86-soundlibs-20131008-r2:
 U I
 + + abi_x86_32  : 32-bit (x86) libraries
 + + alsa        : Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
 + - development : Install pkgconfig files
 + - pulseaudio  : Pull in pulseaudio if using USE=abi_x86_32


That leaves:

Calculating dependencies... done!
[ebuild  N     ] dev-libs/libatomic_ops-7.2d 
[ebuild  N     ] net-libs/libasyncns-0.8-r3  
[ebuild  N     ] gnome-extra/gnome-audio-2.22.2   
[ebuild  N     ] media-sound/pulseaudio-3.0-r1  
[ebuild  N     ] media-plugins/alsa-plugins-1.0.27-r1 

 
pulseaudio is now a hardwired use with soundlibs in x86_32.  The prior soundlibs 20131008-r1 worked fine without all the Gnome overhead, but is now obsoleted.  Is there any solution that does not require all these packages?

Reproducible: Always
Comment 1 Ben Kohler gentoo-dev 2013-12-03 19:12:57 UTC
Check "emerge -pvO emul-linux-x86-soundlibs", it looks like you have USE=pulseaudio enabled on it.
Comment 2 Mark 2013-12-04 01:59:44 UTC
No, not asking for pulseaudio.  This is a build requirement for X86_32.

    + - pulseaudio  : Pull in pulseaudio if using USE=abi_x86_32
Comment 3 Ben Kohler gentoo-dev 2013-12-04 02:08:55 UTC
Please check "emerge -pvO emul-linux-x86-soundlibs", it takes just a few seconds.    I'm fairly certain you have pulseaudio enabled in USE there.  It's on by default since IUSE has "+pulseaudio" and not just "pulseaudio".  If you would like to disable it, you can do so in make.conf or package.use.
Comment 4 Mark 2013-12-04 05:11:59 UTC
I did this.  I guess I will find if this has impacts going forward since I also use medialibs.  Anything is better than pulseaudio and friends.  


>>> Verifying ebuild manifests
>>> Running pre-merge checks for app-emulation/emul-linux-x86-soundlibs-20131008-r2
 * You have disabled USE=pulseaudio. This is known to break pre-built
 * libavfilter in emul-linux-x86-medialibs. If you need that, please
 * turn USE=pulseaudio back on.
Comment 5 Ben Kohler gentoo-dev 2013-12-04 12:26:52 UTC
So setting USE="-pulseaudio" did what you're looking for?
Comment 6 Johannes Hirte 2013-12-04 12:54:20 UTC
app-emulation/emul-linux-x86-soundlib has the pulseaudio-useflag. But that's useless, as app-emulation/emul-linux-x86-sdl, app-emulation/emul-linux-x86-medialibs and even app-emulation/emul-linux-x86-soundlibs depends on pulseaudio:


revdep-rebuild -pvi
 * Configuring search environment for revdep-rebuild
 * Temporary cache files are located in /var/cache/revdep-rebuild
 * Environment mismatch from previous run, deleting temporary files...

revdep-rebuild environment:
SEARCH_DIRS="/bin
/lib
/lib32
/lib64
/opt/bin
/sbin
/usr/bin
/usr/games/bin
/usr/games/lib
/usr/games/lib32
/usr/games/lib64
/usr/lib
/usr/lib32
/usr/lib32/opengl/xorg-x11/lib
/usr/lib32/qt4
/usr/lib64
/usr/lib64/llvm/
/usr/lib64/mysql
/usr/lib64/mysql/
/usr/lib64/OpenCL/vendors/mesa
/usr/lib64/opengl/xorg-x11/lib
/usr/lib64/qca2
/usr/lib64/qt4
/usr/lib64/sidplay/builders
/usr/lib64/vdpau/
/usr/libexec
/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4
/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.4/32
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/32
/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2
/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/32
/usr/lib/qt4
/usr/lib/sidplay/builders
/usr/local/lib
/usr/local/lib32
/usr/local/lib64
/usr/sbin
/usr/x86_64-pc-linux-gnu/gcc-bin/4.8.2"
SEARCH_DIRS_MASK="/lib64/modules
/lib/modules
/opt/spotify/spotify-client
/usr/i686-pc-linux-gnu"
LD_LIBRARY_MASK="libjava.so
libjawt.so
libjvm.so
libodbcinst.so
libodbc.so"
PORTAGE_ROOT="/"
EMERGE_OPTIONS=""
ORDER_PKGS="1"
FULL_LD_PATH="1"

 * Checking reverse dependencies
 * Packages containing binaries and libraries broken by a package update
 * will be emerged.

 * Collecting system binaries and libraries
 * Generated new 1_files.rr
 * Collecting complete LD_LIBRARY_PATH
 * Generated new 2_ldpath.rr
 * Checking dynamic linking consistency
[ 28% ]  *   broken /usr/lib32/alsa-lib/libasound_module_conf_pulse.so (requires libpulse.so.0)
 *   broken /usr/lib32/alsa-lib/libasound_module_ctl_pulse.so (requires libpulse.so.0)
 *   broken /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so (requires libpulse.so.0)
[ 31% ]  *   broken /usr/lib32/libavdevice.so.54.2.101 (requires libpulse-simple.so.0
libpulse.so.0)
[ 33% ]  *   broken /usr/lib32/libSDL-1.2.so.0.11.4 (requires libpulse-simple.so.0
libpulse.so.0)
[ 100% ]                 
 * Generated new 3_broken.rr
 * Assigning files to packages
 *   /usr/lib32/alsa-lib/libasound_module_conf_pulse.so -> app-emulation/emul-linux-x86-soundlibs
 *   /usr/lib32/alsa-lib/libasound_module_ctl_pulse.so -> app-emulation/emul-linux-x86-soundlibs
 *   /usr/lib32/alsa-lib/libasound_module_pcm_pulse.so -> app-emulation/emul-linux-x86-soundlibs
 *   /usr/lib32/libavdevice.so.54.2.101 -> app-emulation/emul-linux-x86-medialibs
 *   /usr/lib32/libSDL-1.2.so.0.11.4 -> app-emulation/emul-linux-x86-sdl
 * Generated new 4_raw.rr and 4_owners.rr
 * Cleaning list of packages to rebuild
 * Generated new 4_pkgs.rr
 * Assigning packages to ebuilds
 * Generated new 4_ebuilds.rr
 * Evaluating package order
 * Generated new 5_order.rr
 * All prepared. Starting rebuild
emerge --complete-graph=y --oneshot --with-bdeps=y --quiet-build=n --pretend --verbose app-emulation/emul-linux-x86-medialibs:0 app-emulation/emul-linux-x86-sdl:0 app-emulation/emul-linux-x86-soundlibs:0

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] app-emulation/emul-linux-x86-medialibs-20131008-r1  USE="development" ABI_X86="32" 0 kB
[ebuild   R    ] app-emulation/emul-linux-x86-soundlibs-20131008-r2  USE="alsa development -pulseaudio" ABI_X86="32" 0 kB
[ebuild   R    ] app-emulation/emul-linux-x86-sdl-20131008  USE="development" 0 kB

Total: 3 packages (3 reinstalls), Size of downloads: 0 kB
 * Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.
Comment 7 Ben Kohler gentoo-dev 2013-12-04 13:01:06 UTC
This is the breakage that it was talking about in the emerge messages after disabling pulseaudio.  Obviously this is less than optimal, but I don't see any way of fixing it until the corresponding packages (alsa-plugins, ffmpeg/libav, etc) have been migrated to multilib / ABI_X86.
Comment 8 Mark 2013-12-04 13:52:38 UTC
What I am looking for? Yes (-pulseaudio prevented the pulseaudio and gnome support) and No (I am in the condition shown in Comment 6).    

Why did 20131008-r1 work OK for me?  I would revert (had I known before I would have masked -r2) but -r1 is no longer in portage and several other packages were part of the 20131008-r2 upgrade.
Comment 9 Jeroen Roovers (RETIRED) gentoo-dev 2013-12-04 14:35:23 UTC
=app-emulation/emul-linux-x86-soundlibs-20131008-r2 is stable for amd64 and has:

  abi_x86_32? (
    ...
    pulseaudio? ( >=media-sound/pulseaudio-4.0-r1[abi_x86_32(-)] )

whereas =media-sound/pulseaudio-4.0-r1 is still marked ~amd64.

repoman doesn't seem to be bothered about this. What problem is the Description of this bug report supposed to convey?
Comment 10 Mark 2013-12-04 20:17:55 UTC
The problem is that the emul-linux-? now pulls in pulse audio.  If one does not use gnome, or more specifically, pulseaudio, then several packages are required to make emul-linux-? functional.  As this was not the case with the earlier -r1 package, why is it necessary to pick up the bloat?  In addition, the -r1 package is now removed from portage, so reverting is not possible (without some fuss).  I am not saying the present version is non-functional, just that it does seem sensible to pull in these additional packages.

[ebuild  N     ] dev-libs/libatomic_ops-7.2d 
[ebuild  N     ] net-libs/libasyncns-0.8-r3  
[ebuild  N     ] gnome-extra/gnome-audio-2.22.2   
[ebuild  N     ] media-sound/pulseaudio-3.0-r1  
[ebuild  N     ] media-plugins/alsa-plugins-1.0.27-r1 

A suggestion to USE="-pulseaudio" ends up with broken emul-linux-?, so this is not really a success path in my mind.

All this is discussed in the comments.
Comment 11 Ben Kohler gentoo-dev 2013-12-04 20:32:42 UTC
This is a known limitation of the prebuilt emul-linux-x86-* packages, mostly ignored until such an "offensive" lib shows up on your doorstep.  Once these migrations to ABI_X86 are done, it won't be a problem anymore.  

There isn't really much to this bug besides "I don't believe support for <X> should be included in the emul-linux-x86-* packages".
Comment 12 Mark 2013-12-05 07:27:18 UTC
I suggest this bug should be closed since there does not appear to be a simple fix at this time.
Comment 13 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-12-05 14:09:06 UTC
Yep, we can't do much unless someone shows up with much better idea or volunteers to maintain multilpe versions of backward-compat emul-linux.

If you are using USE=abi_x86_32 at the pint, you need to accept one of the two issues. We will fix them as soon as we're able to. However, we lack manpower and we lack time to work on this.

We will surely fix this before abi_x86_32 becomes available in stable.