Dne středa 24. srpna 2022 14:32:15 CEST, Andrei Borzenkov napsal(a):
On 24.08.2022 15:20, Vojtěch Zeisek wrote:
Dne středa 24. srpna 2022 13:51:07 CEST, Andrei Borzenkov napsal(a):
On 24.08.2022 14:41, Vojtěch Zeisek wrote:
Installation of libavcodec59 from Packman fails: $ sudo zypper in --repo Packman libavcodec59 Loading repository data... Reading installed packages... 'libavcodec59' is already installed. There is an update candidate for 'libavcodec59' from vendor 'http://packman.links2linux.de', while the current vendor is 'openSUSE'. Use 'zypper install libavcodec59-5.1-2.7.x86_64' to install this candidate. There is an update candidate for 'libavcodec59', but it comes from a repository with a lower priority. Use 'zypper install libavcodec59-5.1-2.7.x86_64' to install this candidate. Resolving package dependencies... Nothing to do. $ sudo zypper in --repo Packman libavcodec59-5.1-2.7.x86_64 Loading repository data... Reading installed packages... Resolving package dependencies... Problem: nothing provides 'libjxl.so.0.7()(64bit)' needed by the to be installed libavcodec59-5.1-2.7.x86_64
Well, you artificially restricted the list of available repositories for this invocation to just Packman so zypper could not find/use package from standard Tumbleweed. I do not know why you used "--repo Packman" in the first place.
I use "--repo Packman" because otherwise zypper would install it from OSS as that repo has higher priority.
No. It would have happened only if two version strings were exactly identical. In your case they are different and zypper even helpfully told you what you needed to do. You just needed to request exact version in which case there would be only one match and repo priorities would not matter.
OK, makes sense.
...how do I keep libavcodec packages from Packman and in other cases give priority to main OSS repo?
zypper does not switch vendors by default so either packages will be updated from Packman or you may get some package dependencies problem (like above) that you need then resolve manually. Unless you changed default configuration and allowed vendor change.
zypp.conf has the default "solver.allowVendorChange = false", so this should be fine...? The only issue might be that libjxl0_7 is available only in OSS and not Packman, but this shouldn't be problem, should it...?
Nothing is wrong with building package in one repository against package in another repository, especially if this "another" repository is the default system repository which is expected to be always available.
I'd thought so.
Which is why you should never arbitrarily restrict repositories to use unless you know exactly what you are doing.
I thought I'm. :-)
I have no idea whether replacement for libjxl0_7 exists in Packman.
It's only in OSS. Anyway, locking libavcodec59 solves it, although it kind of lacks elegance... ;-) -- Vojtěch Zeisek https://trapa.cz/ Komunita openSUSE GNU/Linuxu Community of the openSUSE GNU/Linux https://www.opensuse.org/