Hi, I hesitated unarchiving/reopening #531251 (which is more than ten years old), but in the end opened a new one because maybe the bug could actually be fixed in pulseaudio and modules here. I've justed installed paprefs and pulseaudio-module-raop and noticed the greyed out boxes in the Network Access tab. I looked at #531251 and done an strace, and noticed it tried to access `/usr/lib/pulse-15.0/modules/module-esound-protocol-tcp.so` while the path on my system is /usr/lib/pulse-15.0+dfsg1. So it seems either the patch in paprefs is not entirely correct, or maybe the prefix was added later or something. After adding a symlink from /usr/lib/pulse-15.0+dfsg1 to /usr/lib/pulse-15.0 the boxes are available in paprefs. Regards,
The root cause here seems to be that pa_get_library_version() in libpulse0 does not include the "+dfsg" suffix. I'd say that either (A) it should, or (B) the pulse stuff should all be installed in a directory without the suffix, or (C) there should be a symbolic link from a non-suffix directory to the suffix one. It's not clear to me why the "+dfsg" in the debian package version should be something the innards of the package knows about, so I'd vote for (B). It's tempting to reassign this bug to libpulse0. It's even more tempting to suggest that libpulse0 should have a function that takes the name of a module and returns the path to that module, so clients don't need to go through torturous logic to figure out where the modules might be. $ ls -d /usr/lib/*pulse* /usr/lib/pulse-15.0+dfsg1 $ gdb /usr/bin/paprefs (gdb) run C-c (gdb) print (char *)pa_get_library_version() $1 = 0x7ffff74cad12 "15.0.0"
I've issued merge requests on salsa to the pulseaudio package that addresses this issue. All it does is install the modules in /usr/lib/pulse-MAJOR.MINOR/modules/. Using that small fix, paprefs is not grayed out anymore.
Dear Maintainer,
I'm using Debian testing (bookworm) and the bug is still present.
Running a strace on paprefs show it try to open path which do not exist
access("/usr/lib/pulse-16.1/modules/module-zeroconf-publish.so", F_OK) = -1 ENOENT (Aucun fichier ou dossier de ce type)
newfstatat(AT_FDCWD, "/usr/lib/pulseaudio/modules", 0x7fffd436c1c0, 0) = -1 ENOENT (Aucun fichier ou dossier de ce type)
$ dpkg -S dule-zeroconf-publish.so
pulseaudio-module-zeroconf: /usr/lib/pulse-16.1+dfsg1/modules/module-zeroconf-publish.so
Also doing the following symlink fix the issue
ln -s /usr/lib/pulse-16.1+dfsg1 /usr/lib/pulseaudio
Regards,
Aymeric