Pulseaudio needing libsoxr0 but Yast flags red

My setup seems to have entered an odd state. In the Yast software update page all is good except that the file “libsoxr0” is flagged red, indicating that the file is no longer available on any repo. Normally I would just delete that file and look for the current version, but Yast indicates that to delete that file implies deleting most of Pulseaudio as well. My inclination is to allow this and then try to reinstate Pulseaudio with fingers crossed that the house can be rebuilt from available bricks. Sound cool, or is there a story here related to libsoxr0?

Red doesn’t necessarily mean it is no longer available in any repo, it can also mean that only lower versions are available in the repos.

In any case, libsoxr0 was never part of the standard repos (so pulseaudio cannot really require it, at least not directly).
It was contained in Packman, but seems to be missing indeed for 42.1 now (it is still there for 13.2).

Packman restructured their packages/repo recently to more match the ones in the standard distribution releases (especially having the same versions that are in the standard repos), to make things easier for users and avoid problems (you don’t have to replace the full gstreamer stack any more e.g., only install the additional plugins).

Apparently libsoxr0 got removed by that “cleanup”.

Your suggestion of removing libsoxr0 and then reinstalling pulseaudio should work I suppose, for giving real advise I would like to know more things though:

  • what packages will get removed exactly?
  • what conflict error do you get if you lock them (taboo - do not modify), at least pulseaudio itself?

Here is the conflict list:

#### YaST2 conflicts list - generated 2016-08-05 07:56:36 ####

pulseaudio-7.0-5.1.x86_64 requires libsoxr.so.0()(64bit), but this requirement cannot be provided
deleted providers: libsoxr0-0.1.2-10.1.x86_64
uninstallable providers: libsoxr0-0.1.2-1.1.x86_64[openSUSE-42.1-0]
                   libsoxr0-0.1.2-1.1.x86_64[repo-oss]
     ] Following actions will be done:
deinstallation of pulseaudio-7.0-5.1.x86_64
deinstallation of audacity-2.1.2-102.3.x86_64
deinstallation of pulseaudio-utils-7.0-5.1.x86_64
deinstallation of pulseaudio-module-zeroconf-7.0-5.1.x86_64
deinstallation of pulseaudio-module-x11-7.0-5.1.x86_64
deinstallation of pulseaudio-module-lirc-7.0-5.1.x86_64
deinstallation of pulseaudio-module-gconf-7.0-5.1.x86_64
deinstallation of pulseaudio-module-bluetooth-7.0-5.1.x86_64
deinstallation of pulseaudio-lang-7.0-5.1.noarch
deinstallation of alsa-plugins-pulse-1.0.29-10.1.x86_64
deinstallation of pulseaudio-bash-completion-7.0-5.1.x86_64
deinstallation of paprefs-0.9.10-14.3.x86_64
deinstallation of paprefs-lang-0.9.10-14.3.noarch

If I allow libsoxr0 to stay, then lock pulseaudio, then try to delete libsoxr0 the conflict list says it wants to unlock PA and treat it as normal.
I tried switching the version of the installed libsoxr0 to the alternate openSUSE version, but I get the same behaviour.

Ok, pulseaudio in 42.1 does indeed require libsoxr0.
And libsoxr0 is included in the standard repos.

So it is marked red because you installed a higher version at some point (from Packman presumably), which is not available any more.

This also means that you shouldn’t uninstall it, resp. explains why pulseaudio will get removed.
Reinstalling pulseaudio will pull it in automatically again anyway, but if there is some conflict you might not be able to do that.

I tried switching the version of the installed libsoxr0 to the alternate openSUSE version, but I get the same behaviour.

The same?
pulseaudio from the standard repo should definitely be satisfied with the libsoxr0 from the standard repo.
Maybe you chose the 32bit version by mistake?

Try to downgrade audacity, an older Packman version might require Packman’s libsoxr0 (that doesn’t exist any more for 42.1) causing a conflict.

If you still have problems, please post the new conflict list when trying to switch libsoxr0 back to the only available version (from the standard repo), by “Upgrade Unconditionally” e.g.
Alternatively, run “sudo zypper in -f libsoxr0” and post the conflict messages you may get, might be easier to copy/paste.

OK so I removed Audacity to get it completely out of the way and had the same result. So Audacity not involved.
I evidently made mistake in thinking that just selecting the alternate (lower) version from opensuse Yast would switch it, but it might not have.
Once I did the suggested “Upgrade unconditionally” the downgrade took place and now the list of repo packages is clear of red items again and PA still works fine.
Resolved at this end. Thanks very much.

Well, audacity is involved insofar as that it also requires libsoxr0, as can be seen in the conflict list you posted.
So it may have blocked the downgrade for some reason.

I evidently made mistake in thinking that just selecting the alternate (lower) version from opensuse Yast would switch it, but it might not have.

No, just selecting a package doesn’t change anything.
You have to explicitely tell YaST to do anything with the selected package.

It is possible to explicitly choose a version in the “Versions” tab below the package list though.
If you do this, the package will be automatically set to “upgrade” to this version.
I thought that was what you were doing…

Another option is to click on the status icon (the tick mark left of the package name that shows whether a package is installed or not, or whether it should be upgraded/deleted) to switch between the states.

Resolved at this end. Thanks very much.

You’re welcome.