Packages Circumventing Versioning

Hi,

Continuing my quest to understand versions, there are a number of packages that use a version number in the package name and so are not considered upgrades of each other.
There are not that many but still is a regular occurrence. Here is one example:

libx265-188
libx265-179

There are others, some of them with 8 or 9 versions in different packages.

Are there numbered that way because we need multiple of them? And, if so, how do we determine which ones are no longer needed?

Thanks,

  • Itai

I don’t know the answer for the first question. For the second:

zypper pa --unneeded

We should have a FAQ and/or article in the wiki for this, if we don’t have already.

There is no such library in Leap 15.1 repositories. You must have some third party packages installed.

Are there numbered that way because we need multiple of them?

Usually names are different because they are not compatible so you cannot update 179 to 188. If you have programs built against 179 they must continue to use 179 even after you installed 188. This is just educated guess, I have no idea what packages are you talking about.

Those were just first examples I saw, but you are this is not from standard repo and looking at specifically, there much fewer example of this but I did find some:


libjpeg62
libjpeg8

And I have both installed for some reason. One is used by 592 packages, the other by 8. So, your explanation makes sense.

Thank you!

In my experience, those show up with:

zypper packages --orphaned

and I remove them if that does not cause conflicts.

Extremely useful! Thanks!

Some packages use the libjpeg8, some uses the libjpeg62, that is defined in the source of the programm.
Not in the spec file of the package.

So there are two builds:

rpm -ql libjpeg62
/usr/lib64/libjpeg.so.62
/usr/lib64/libjpeg.so.62.3.0
/usr/share/licenses/libjpeg62
/usr/share/licenses/libjpeg62/LICENSE.md
rpm -ql libjpeg8
/usr/lib64/libjpeg.so.8
/usr/lib64/libjpeg.so.8.2.2
/usr/share/licenses/libjpeg8
/usr/share/licenses/libjpeg8/LICENSE.md