[Yum-devel] LC_MESSAGES dependencies

Jay Soffian jay-yum-devel at soffian.org
Wed Oct 11 06:02:17 UTC 2006


Let me start by saying this is most likely a problem of my own doing.

I am working on packaging up yum and its requirements (python, rpm,  
sqlite, neon, beecrypt, ...) as a stand-alone "bundle" that can be  
installed on various rpm-based distributions of Linux (obviously the  
bundle must be compiled for the various Linux flavors).

To do so, I'm starting with recent versions of python (2.4.3) and rpm  
(4.4.6). These executables install in parallel to the vendor-provided  
executables, they are not replacements. Note that I'm only using yum  
in this case to solve dependencies, not to actually install the  
packages (in fact, I've modified the rpm macros file to make the  
rpmdb read-only and I set tsflags=test in yum.conf). The idea is to  
use yum to figure out what to install and how to install it, then use  
the vendor-provided rpm to do the actual installation (invoking /bin/ 
rpm if needed where rpm <= 4.1.1). I'm sure this is fraught with  
peril, but so far ignorance is bliss.

In any case, I have a working Python executable and what appears to  
be a working RPM executable and python-rpm bindings and yum is more  
or less happy ... until it gets to figuring out dependencies. What  
I'm seeing is that every package appears to have dependencies on  
LC_MESSAGES. For example, in this case on a CentOS-4.3 system:

./bin/yum update tar
...
Resolving Dependencies
1160544814.3
--> Populating transaction set with selected packages. Please wait.
Member: tar.i386 0-1.14-10.RHEL4 - u
Adding Package tar - 1.14-10.RHEL4.i386 in mode u
---> Package tar.i386 0:1.14-10.RHEL4 set to be updated
--> Running transaction check
# of Deps = 5

Dep Number: 1/5
tar requires: /usr/share/locale/ro/LC_MESSAGES
--> Processing Dependency: /usr/share/locale/ro/LC_MESSAGES for  
package: tar
Requiring package is from transaction set
Resolving for requiring package: tar-1.14-10.RHEL4 in state u
Resolving for requirement: /usr/share/locale/ro/LC_MESSAGES
Searching pkgSack for dep: /usr/share/locale/ro/LC_MESSAGES
Importing additional filelist information
Potential match for /usr/share/locale/ro/LC_MESSAGES from kde-i18n- 
Romanian - 1:3.3.1-2.1.noarch
TSINFO: Marking kde-i18n-Romanian - 1:3.3.1-2.1.noarch as install for  
tar

Dep Number: 2/5
tar requires: /usr/share/locale/id/LC_MESSAGES
--> Processing Dependency: /usr/share/locale/id/LC_MESSAGES for  
package: tar
Requiring package is from transaction set
Resolving for requiring package: tar-1.14-10.RHEL4 in state u
Resolving for requirement: /usr/share/locale/id/LC_MESSAGES
Searching pkgSack for dep: /usr/share/locale/id/LC_MESSAGES

Dep Number: 3/5
tar requires: /usr/share/locale/ms/LC_MESSAGES
--> Processing Dependency: /usr/share/locale/ms/LC_MESSAGES for  
package: tar
Requiring package is from transaction set
Resolving for requiring package: tar-1.14-10.RHEL4 in state u
Resolving for requirement: /usr/share/locale/ms/LC_MESSAGES
Searching pkgSack for dep: /usr/share/locale/ms/LC_MESSAGES

Dep Number: 4/5
tar requires: /usr/share/locale/sl/LC_MESSAGES
--> Processing Dependency: /usr/share/locale/sl/LC_MESSAGES for  
package: tar
Requiring package is from transaction set
Resolving for requiring package: tar-1.14-10.RHEL4 in state u
Resolving for requirement: /usr/share/locale/sl/LC_MESSAGES
Searching pkgSack for dep: /usr/share/locale/sl/LC_MESSAGES
Potential match for /usr/share/locale/sl/LC_MESSAGES from kde-i18n- 
Slovenian - 1:3.3.1-2.1.noarch
TSINFO: Marking kde-i18n-Slovenian - 1:3.3.1-2.1.noarch as install  
for tar

Dep Number: 5/5
tar requires: /usr/share/locale/et/LC_MESSAGES
--> Processing Dependency: /usr/share/locale/et/LC_MESSAGES for  
package: tar
Requiring package is from transaction set
Resolving for requiring package: tar-1.14-10.RHEL4 in state u
Resolving for requirement: /usr/share/locale/et/LC_MESSAGES
Searching pkgSack for dep: /usr/share/locale/et/LC_MESSAGES
Potential match for /usr/share/locale/et/LC_MESSAGES from kde-i18n- 
Estonian - 1:3.3.1-2.1.noarch
TSINFO: Marking kde-i18n-Estonian - 1:3.3.1-2.1.noarch as install for  
tar
miss = 2
conf = 0
CheckDeps = 3
--> Restarting Dependency Resolution with new changes.

And on and on it goes trying to find satisfiers for LC_MESSAGES.  
Every single package (from what I have tested) has this problem.

What I can't figure out is where the heck these requirements are  
coming from. They're not in the downloaded rpm headers or in the repo  
metadata. It would appear for whatever reason that rpm is kicking  
back the dependencies during the test transaction. Before I embark on  
what feels like it's going to be many hours/days of debugging, does  
this problem ring any bells? I'm guessing my rpm binary/libs are  
broken, but I'm not sure how I would have broken it in this way.

Ah, this is yum-2.6.1 btw.

Thanks,

j.




More information about the Yum-devel mailing list