Description of problem: The macro alias definitions for --redhatprovides and --redhatrequires do not work. I understand these are legacy BUT either 1. remove the definitions since it is all suppose to work for failed dependencies automagically ... BTW, is rpmdb-fedora now installed on all systems? or 2. change definitions to make them work with fedora or 3. change names to fedoraprovides and fedorarequires and correct the defintions.
This is mostly a duplicate of: Bug #106843 Bug #106844
Now that the rpmdb-fedora package installs working db's, this works [kaboom@skuld kaboom]$ rpm -q --redhatrequires xpdf xfig-3.2.4-2 [kaboom@skuld kaboom]$
This is still not working for mee ... rpmdb-fedora-0.95-0.20031027 when I do rpm -q --redhatrequires xpdf I get: no package requires xpdf [done on an everything install system]
I believe you may be using a different rpm package than that available in rawhide (4.2.1-0.30). I believe the /usr/lib/rpm/rpmpopt-4.2.1 file still needs to be changed to point to the fedora directory rather than redhat (or make redhat a sym-link to fedora). If I do: rpm -q --define "_dbpath /usr/lib/rpmdb/i386-redhat-linux/fedora/" --whatrequires xpdf Then I get: xfig-3.2.4-2
The --redhat{provides,requires} options work just like they always did. What you are really asking for is --fedora{provides,requires} added to rpmpopt. rpm cannot carry vendor specific options as default for all possible vendors. Either config your own --fedora* options in /etc/popt or ~/.popt (copy, say, --redhatprovides entry from /usr/lib/rpm/rpmpopt-*, and do s/redhat/fedora/g), or live with the replacement for --redhatprovides, the Suggests: output that is displayed for all installs that fail because of missing dependencies.
"rpmdb-fedora" needs to be added to bugzilla. I am reopening this problem and reassigning it to rpmdb since it appears to be more of a problem with rpmdb-fedora rather than rpm. /usr/lib/rpm/rpmpopt-4.2.1 have definitions of the form: rpm alias --redhatprovides -q --define '_dbpath /usr/lib/rpmdb/%{_arch}-%{_vendor}-%{_os}/redhat' --whatprovides and rpm alias --redhatrequires -q --define '_dbpath /usr/lib/rpmdb/%{_arch}-%{_vendor}-%{_os}/redhat' --whatrequires You will note that the directory "redhat" is hard coded. When the redhat->fedora change was made, rpmdb-fedora not has the directory name of "fedora". My suggested resolution is to create a symlink of the form: ln -s ../i386-redhat-linux-fedora/ redhat
Symlinks won't work, rpm cannot replace a directory with a symlink. %{_vendor} could be used in path, but then --redharprovides is misnamed. The intent was to hardwire the vendor name in both the option and the path. I will retire both --redhatprovides and --redhatrequires with description in rpm.8 man page of how to configure in /etc/popt if you wnat/need the functionality. Deferred until somewhen ...