rpm-devel  

Removing rpmrc from rpm-4_5

Jeff Johnson
Thu, 07 Jun 2007 11:06:01 -0700

From conversations with several, the rpm-4_5 branch seems to
be mostly willing to live without reading /usr/lib/rpm/rpmrc by default.

No matter what, rpm-5.0 is not going to read rpmrc files ever again.

If there is a need to read rpmrc for some interpretation of
   "everywhere compatible"
then not only the first argument to rpmReadConfigFiles() needs to be changed.

In addition, there will be some modest number of macro values that will need to be initialized so that Good Old Paths expand correctly. Not hard at all to add, in fact is exactly as hard as identifying what path macros need to be initialized.

IIRC, Mark added 3 paths in order to install rpm-4.5 path independently. Note that rpm-4_5 is likley going to install in /usr/bin, not /bin, so that the relocation rules are simpler. Good, renaming to /bin/rpm5 would have driven me nuts.

Here's an example of the type of failure to expect if you are trying to preserve
reading /usr/lib/rpm/rpmrc by default.

This error is from yum before I turned off /usr/lib/rpm/rpmrc:

# yum upgrade
error: Unable to open %{_usrlibrpm}/rpmrc for reading: No such file or directory.
Loading "installonlyn" plugin
error: cannot open Packages database in /var/lib/rpm
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in <module>
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 82, in main
    base.getOptionsConfig(args)
  File "/usr/share/yum-cli/cli.py", line 145, in getOptionsConfig
    errorlevel=opts.errorlevel)
File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 153, in _getConfig
    self._conf = config.readMainConfig(startupconf)
File "/usr/lib/python2.5/site-packages/yum/config.py", line 601, in readMainConfig yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg) File "/usr/lib/python2.5/site-packages/yum/config.py", line 664, in _getsysver
    idx = ts.dbMatch('provides', distroverpkg)
TypeError: rpmdb open failed

73 de Jeff
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
Developer Communication List                        rpm-devel@rpm5.org
  • Removing rpmrc from rpm-4_5 Jeff Johnson