Description of Problem:
rpmlint comes back with a series of errors (mostly small stuff) on the
nautilus-1.0.4-11 rpm in beta2. The full file is attached, the two I think
are most important are:
E: nautilus postin-without-ldconfig /usr/lib/libnautilus-adapter.so.0.0.0
E: nautilus postun-without-ldconfig /usr/lib/libnautilus-adapter.so.0.0.0
E: nautilus postin-without-ldconfig /usr/lib/libnautilus-private.so.0.0.0
E: nautilus postun-without-ldconfig /usr/lib/libnautilus-private.so.0.0.0
E: nautilus postin-without-ldconfig /usr/lib/libnautilus.so.0.0.0
E: nautilus postun-without-ldconfig /usr/lib/libnautilus.so.0.0.0
E: nautilus postin-without-ldconfig /usr/lib/libnautilus-tree-view.so.0.0.0
E: nautilus postun-without-ldconfig /usr/lib/libnautilus-tree-view.so.0.0.0
E: nautilus invalid-lc-messages-dir
E: nautilus invalid-shell-in-%postun /sbin/ldconfig
These seem to be caused by the scripts in the rpm itself:
#rpm -q --scripts nautilus
postinstall scriptlet (through /bin/sh):
if ! grep /usr/lib /etc/ld.so.conf > /dev/null ; then
echo "/usr/lib" >> /etc/ld.so.conf
postuninstall scriptlet (through /sbin/ldconfig):
From what I know, the "through" specifier should be a shell, not ldconfig.
Also, these scripts don't seem to apply properly to what is occuring
during the rpm installation -- the libraries are added/removed in /usr/lib,
but running scrollkeeper-update doesn't run ldconfig (from what I can tell)
nor does it deal with /usr/lib -- it updates the configured OMF directory,
which from scrollkeeper-config is /usr/share/omf.
Also, the check simply looks for the string "/usr/lib", which in this case
is *not* present in the /etc/ld.so.conf by itself (another bug in and of
itself? Change in defaults?). However, the grep check succeeds because
there are several directories in /etc/ld.so.conf that contain the string
/usr/lib as part of their directory name. In other words, the grep check
is too simplistic and does not achieve the apparently desired result, which
furthermore may be undesireable behavior.
I'm not sure why rpmlint returns an "invalid-lc-messages-dir", but it
appears to be installing something for a locale that we don't support --
not a big deal, but probably should be fixed. What locale is "nn" anyway?
Is this just a typo for "no"? It does appear to be the norwegian entry,
from looking at the nautilus.mo file dropped in the directory, but there is
already a nautilus.mo file in the "no" directory. The two files do appear
Steps to Reproduce:
1. Run rmplint against the nautilus package
2. view errors
Some low-grade errors and warnings, along with some strange and more
serious errors. The rpm scripts seem to be broken in several places.
return only low-grade errors and warnings, rpm scripts function properly
and do the job they are supposed to do.
Created attachment 24607 [details]
rpmlint errors from nautilus-1.0.4-11
This defect is considered MUST-FIX for Fairfax.
the -p problems are just people not understanding the
%postun -p "hack".
nn is a standard language - it's the Nynorsk dialect of Norwegian.
Fixing in nautilus-1.0.4-15
That was probably unclear - what I meant by -p is that the person
who wrote the spec file originally didn't understand it, I'm
fixing it now.
Should be fixed now.