Red Hat Bugzilla – Bug 458290
False positive: explicit-lib-dependency liberation-fonts
Last modified: 2008-11-24 14:15:49 EST
Description of problem:
"Requires: liberation-fonts" is reasonable, but rpmlint thinks it's a library.
Relevant code is from TagsCheck.py:
if not is_source and not is_devel:
if res and not res.group(1) and not d:
printError(pkg, 'explicit-lib-dependency', d)
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. rpmlint openoffice.org-core | grep explicit-lib-dependency
(this is upon openoffice.org-core-2.4.0-12.8.fc9.i386 on an F9 box)
openoffice.org-core.i386: E: explicit-lib-dependency liberation-fonts
From rpmlint -I explicit-lib-dependency
You must let rpm find the library dependencies by itself. Do not put unneeded
explicit Requires: tags.
I'm afraid all we could do about this in rpmlint would be to explicitly filter this message for liberation-fonts out in /usr/share/rpmlint/config. While at it, could also check all other lib* packages in Fedora that could cause similar false positives (I suppose at least eg. libertas-usb8388-firmware would).
I'm not quite sure if this is worth it though as we'll always lag behind with our exception lists - this issue could be just placed in the "just ignore rpmlint on this one" bucket. co-maintainers, thoughts?
If there was a explicit exception list, would it be kept as a Fedora specific patch or would the list of packages be general enough to fit in upstream rpmlint? It *may* be worth adding an exception list, as it would then take very little effort to add to it on the few occasions other packages falsely trip this check, perhaps more so if the list is upstream and only needs to be maintained in one place.
But leaving this as something safe to ignore isn't all that bad either. :)
I suppose it'd be Fedora specific, but not a patch, just one line added to our /usr/share/rpmlint/config (upstream does not ship a config file at all IIRC). For example:
addFilter("explicit-lib-dependency (liberation-fonts|libertas-usb8388-firmware|[other false positives here])")
BTW, some other checks and messages that are a result of rpmlint thinking it's checking a library package might need similar treatment too.
rpmlint-0.85-1.fc9 has been submitted as an update for Fedora 9.
rpmlint-0.85-1.fc9 has been pushed to the Fedora 9 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
su -c 'yum --enablerepo=updates-testing update rpmlint'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F9/FEDORA-2008-9125
rpmlint-0.85-2.fc9 has been pushed to the Fedora 9 stable repository. If problems still persist, please make note of it in this bug report.
rpmlint-0.85-2.fc10 has been submitted as an update for Fedora 10.
rpmlint-0.85-2.fc10 has been pushed to the Fedora 10 stable repository. If problems still persist, please make note of it in this bug report.
On a related note: I'm currently working on packaging a Java library called "cglib" which is required by another package I'm working on. Rpmlint complains on the "Requires: cglib" line in my dependent package ... I guess this is another one to just ignore?