Bugzilla – Bug 1221250
glibc-locale-base missing locale() provides
Last modified: 2024-05-15 14:22:49 UTC
Hi, the glibc-locale package ships with "Provide"s for the different locales it ships: ``` $ rpm -q --provides glibc-locale|head glibc-locale = 2.38-6.1 glibc-locale(x86-64) = 2.38-6.1 locale(glibc:aa_DJ) locale(glibc:aa_DJ.utf8) locale(glibc:aa_ER) locale(glibc:aa_ER@saaho) locale(glibc:aa_ET) locale(glibc:af_ZA) locale(glibc:af_ZA.utf8) locale(glibc:agr_PE) ``` There are two locales which are shipped in glibc-locale-base - en_US.utf8 and C.utf8. Upon packaging something which requires one of them, I noticed that glibc-locale-base is not shipping any `locale()` "Provide"s. ``` $ rpm -q --provides glibc-locale-base glibc-locale-base = 2.38-6.1 glibc-locale-base(x86-64) = 2.38-6.1 libCNS.so()(64bit) libGB.so()(64bit) libISOIR165.so()(64bit) libJIS.so()(64bit) libJISX0213.so()(64bit) libKSC.so()(64bit) ``` I would expect glibc-locale-base to Provide `locale(glibc:C.utf8)` and `locale(glibc:en_US.utf8)` - both to have providers for all locales in the distribution and to make packaging easier. Unfortunately I could not figure out how the "Provide"s in glibc.spec are generated myself, hence I am opening this report instead. Cheers, Georg
The provides are generated by rpm.
Actually the generator is in rpm-config-SUSE. It doesn't generate the provides because the package name does not end in "-lang" or "-locale". Seems like it needs special casing for glibc-locale-base. I think Ludwig implemented the locale code. Could you please open a pull request?
https://github.com/openSUSE/rpm-config-SUSE/pull/75