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

Bug 410261

Summary: media-libs/alsa-plugins-1.0.26 (51-pulseaudio-probe.conf): alsa tries to load plugins from /usr/lib instead of $(get_libdir)
Product: Gentoo Linux Reporter: Michał Górny <mgorny>
Component: [OLD] LibraryAssignee: Gentoo ALSA team <alsa-bugs>
Status: RESOLVED FIXED    
Severity: major CC: erikdenstore+gbugs, ford_prefect
Priority: Normal Keywords: PullRequest
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://github.com/gentoo/gentoo/pull/25264
https://github.com/gentoo/gentoo/pull/25271
Whiteboard:
Package list:
Runtime testing required: ---

Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2012-03-30 18:06:01 UTC
$ alsamixer 
ALSA lib conf.c:3314:(snd_config_hooks_call) Cannot open shared library /usr/lib/alsa-lib/libasound_module_conf_pulse.so
ALSA lib control.c:951:(snd_ctl_open_noupdate) Invalid CTL default
cannot open mixer: No such file or directory

while the requested plugin obviously is in /usr/lib64, not /usr/lib.
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2012-03-30 18:08:13 UTC
The file /usr/share/alsa/alsa.conf.d/51-pulseaudio-probe.conf references that path.
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2012-09-07 22:40:38 UTC
Should I mention it's Gentoo-installed file and thus there's nothing upstream can do about it?
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2012-09-09 08:44:38 UTC
CC ford_prefect@ as pulseaudio maintainer
Comment 4 SpanKY gentoo-dev 2012-09-24 02:23:07 UTC
should be all set now in the tree; thanks for the report!

Commit message: Fix hardcoded /usr/lib/ path to use multilib paths
http://sources.gentoo.org/media-plugins/alsa-plugins/alsa-plugins-1.0.26.ebuild?r1=1.1&r2=1.2
Comment 5 Fabio Erculiani (RETIRED) gentoo-dev 2012-11-26 00:04:34 UTC
I think that the proper fix here is to be multilib friendly and:
1. reference the soname only in 51-pulseaudio-probe.conf
   (libasound_module_conf_pulse.so)
2. use $(get_all_libdirs) to generate a proper LDPATH and save it into /etc/env.d

Or 32bit applications (like Wine) on amd64-multilib just won't work.
See the alsa-plugins ebuild in the sabayon-distro overlay.
Comment 6 eroen 2013-11-30 19:13:58 UTC
Please reopen.

The change mentioned in comment 4 only changes /usr/lib/alsa-lib/libasound_module_conf_pulse.so into /usr/lib64/alsa-lib/libasound_module_conf_pulse.so , which does not make it any more usable for 32-bit applications.

In my testing, lxnay's suggestion in comment 5 of just specifying the filename works fine.
Comment 7 Arun Raghavan (RETIRED) gentoo-dev 2013-11-30 19:22:00 UTC
Reopening as per comment 6. I can't really fix this myself any more, but the suggestion does seem to make sense.
Comment 8 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-11-30 21:34:38 UTC
(In reply to Fabio Erculiani from comment #5)
> 2. use $(get_all_libdirs) to generate a proper LDPATH and save it into
> /etc/env.d

I'm wondering if we specifically need to play with global LDPATH for this. Wouldn't it be better to alter RPATH of libasound?
Comment 9 eroen 2013-11-30 21:59:08 UTC
Changing the line
        lib "/usr/lib64/alsa-lib/libasound_module_conf_pulse.so"
to
        lib "libasound_module_conf_pulse.so"
in /usr/share/alsa/alsa.conf.d/51-pulseaudio-probe.conf appears to be sufficient, even when the exact path to the .so is not listed in ld.so.cache or in env.d/
Comment 10 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-11-30 22:02:47 UTC
Yeah, I can reproduce that as well.

+*alsa-plugins-1.0.27-r1 (30 Nov 2013)
+
+  30 Nov 2013; Michał Górny <mgorny@gentoo.org> +alsa-plugins-1.0.27-r1.ebuild:
+  Fix pulseaudio plugin for multilib, bug #410261, comment 5+.
+

Please replace the sed call with updated file when old versions are gone.
Comment 11 Larry the Git Cow gentoo-dev 2022-05-01 19:54:27 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f24dec544560c7e8d7f495ef7872f72e15a5c678

commit f24dec544560c7e8d7f495ef7872f72e15a5c678
Author:     Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
AuthorDate: 2022-04-30 19:11:50 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-05-01 19:54:17 +0000

    media-plugins/alsa-plugins: Clean up unnecessary sed
    
    Drop remaining sed from #410261 and change installed conf file instead.
    
    Bug: https://bugs.gentoo.org/410261
    Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
    Closes: https://github.com/gentoo/gentoo/pull/25271
    Signed-off-by: Sam James <sam@gentoo.org>

 media-plugins/alsa-plugins/alsa-plugins-1.2.2.ebuild      | 7 +------
 media-plugins/alsa-plugins/alsa-plugins-1.2.5.ebuild      | 7 +------
 media-plugins/alsa-plugins/alsa-plugins-1.2.6.ebuild      | 5 -----
 media-plugins/alsa-plugins/files/51-pulseaudio-probe.conf | 2 +-
 4 files changed, 3 insertions(+), 18 deletions(-)