On Freitag, 8. Dezember 2023 09:01:14 CET Marcus Meissner wrote:
Hi,
On Fri, Dec 08, 2023 at 12:42:06AM +0100, Stefan Brüns wrote:
Hi,
currently, many packages in repositories based on openSUSE:Leap:15.{4,5} fail with the above error message. See e.g. [1] for quite some occurences. Another affected base repository is openSUSE:Backports:SLE-15-SP5.
Repositories based on openSUSE:Leap:15.{4,5}:Update are fine.
Some projects have worked around this by adding "Prefer: icu-devel" to their project config, while SUSE:SLE-15-SP4:Update [2] has:
--- #request by dcermak 2023-01-25 #modified request by fvogdt 2023-01-27 #modified request by dmueller 2023-09-15 Prefer: -libicu60_2 -libicu69 -libicu-suse65_1 ---
The current state is IMHO quite messy, and leaving this up to the individual projects is wrong. The packages inherited from openSUSE:Leap:15.5 should be in a consistent state, without need for any local fixups.
So, can someone please add the actually correct lines to the relevant base projects?
Does this also happen if you use openSUSE:Backports:SLE-15-SP5:Update?
We set this in SUSE:SLE-15:Update:
# darix added 20230911 requested by meissner Prefer: libicu73_2-devel
And this config should inherit through all of the project chain if you use :Update
Someone apparently has changed some project configuration, as I can't see the resolution ambiguities any longer. A heads up to the list would have been very welcome. But nevertheless, I think there are still several problems here: 1. When adding a repository via the OBS UI ("Add from a distribution"), you end up with a non-:Update repository, no matter if you select "openSUSE Backports for SLE 15 SP5" or "openSUSE Leap 15.5". So the default choice would be broken. And you have to edit the XML files to fix it. 2. As far as I can see, 15.5 does not have libicu73*, so the Prefer: is a no- op. But is does have icu65.1 (from SLE15) and icu69.1 (from SLE15SP4). 3. Mixing multiple versions of the same shared library is in general a very bad thing. I can see the build host installs both libicu 65.1 and 69.1, so binaries may end up with linking to both versions (directly and indirectly). For libicu, this is probably mostly fine, as almost[1] all symbols are namespace-prefixed (e.g. icu_65::) for suffixed (e.g. _65), but for other libraries this may be actual problem. (For large parts, I consider the SLPP as actually harmful, as there is *no* safeguard for this to happen, and applications can break in various hard to diagnose ways.) Kind regards, Stefan -- Stefan Brüns / Bergstraße 21 / 52062 Aachen phone: +49 241 53809034 mobile: +49 151 50412019