[Bug 226377] Merge Review: rpm

bugzilla at redhat.com bugzilla at redhat.com
Sat Apr 18 13:54:49 UTC 2009


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=226377





--- Comment #21 from Panu Matilainen <pmatilai at redhat.com>  2009-04-18 09:54:43 EDT ---
(In reply to comment #19)
> What's blocking this review?
> 
> Recent rpmlint does not complain on license because "GPLv2+" and "GPLv2+ and
> LGPLv2+ with exceptions" are valid now
> (https://fedoraproject.org/wiki/Licensing). If anyone feels there's problem
> with licensing, let's block on bug fe-legal.

BTW rpm's source license has gotten somewhat less complicated since this review
was started, as rpm no longer bundles 3rd party libraries in its tarball. So
there's basically rpm's main GPL/LGPL dual license + two MIT-licensed Lua
extensions.

> --
> 
> Informal rpmlint review on recent rpm
> =====================================
> 
> SPECS/rpm.spec:571: W: macro-in-%changelog patch
> 
> * Thu Sep 25 2008 Jindrich Novy <jnovy at redhat.com>
> - don't treat %patch numberless if -P parameter is present (#463942)

Ok, will fix.

> rpm.src: W: name-repeated-in-summary RPM
> 
> don't get this one...

Well it's a pretty bogus warning if you ask me. Rpm's summary contains RPM
because it's not only name of the software, it's also name of the package
format which the software in question manages.

> rpm.src: W: strange-permission fontconfig.prov 0755
> rpm.src: W: strange-permission desktop-file.prov 0755
> 
> any idea?

Another bogus (IMO) warning: these are executable scripts. Why should their
permission in the source be anything else?

> rpm.x86_64: W: only-non-binary-in-usr-lib
> 
> "There are only non binary files in /usr/lib so they should be in /usr/share."
> 
> Huh, what?

Most of /usr/lib/rpm/ contents would be more appropriate for /usr/share/ but
changing that is not so simple, lots of things expect rpm scripts and stuff to
live in the hardwired /usr/lib/rpm directory. This is not going to change
anytime soon.

> 
> rpm.x86_64: E: standard-dir-owned-by-package /var/lib/rpm
> 
> newman at dhcp-lab-124 rpmbuild $ rpmquery -f /var/lib/rpm
> rpm-4.7.0-0.beta1.9.fc11.x86_64
> 
> rpmlint bug?

Yes, rpmlint bug. /var/lib/rpm belongs to rpm, not anything else.

> 
> rpm.x86_64: E: script-without-shebang /usr/lib/rpm/rpm.xinetd
> rpm.x86_64: E: script-without-shebang /usr/lib/rpm/rpm.log
> 
> exec perm probably not necesary
> 
> rpm-build.x86_64: E: script-without-shebang /usr/lib/rpm/macros.python
> rpm-build.x86_64: E: script-without-shebang /usr/lib/rpm/macros.php
> rpm-build.x86_64: E: script-without-shebang /usr/lib/rpm/macros.perl
> 
> ditto
> 
> rpm-python.x86_64: E: script-without-shebang
> /usr/lib64/python2.6/site-packages/rpm/__init__.py
> 
> ditto

Nod, executable permission on all these is incorrect. This is an upstream
issue, just fixed it in rpm.org HEAD. Doesn't seem worth bothering to fix in
the spec but can/will do if deemed necessary.

> 
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_recover
> ../../bin/db_recover
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_deadlock
> ../../bin/db_deadlock
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_stat
> ../../bin/db_stat
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_dump
> ../../bin/db_dump
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_archive
> ../../bin/db_archive
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_upgrade
> ../../bin/db_upgrade
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_printlog
> ../../bin/db_printlog
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_verify
> ../../bin/db_verify
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_load
> ../../bin/db_load
> rpm.x86_64: W: dangling-relative-symlink /usr/lib/rpm/rpmdb_svc
> ../../bin/berkeley_db_svc
> 
> Build system problem? Anyone seeing this too?

>From the spec:
# plant links to db utils as rpmdb_foo so existing documantion is usable

This is done on purpose, and the links aren't dangling when dependencies are
installed (rpm main package requires db4-utils)

> 
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Group rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Group rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Basenames rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Basenames rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Requireversion rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Requireversion rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Providename rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Providename rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.007 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.007 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Pubkeys rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Pubkeys rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.003 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.003 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.009 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.009 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Conflictname rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Conflictname rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Provideversion rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Provideversion rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Triggername rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Triggername rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Filedigests rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Filedigests rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Dirnames rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Dirnames rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.004 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.004 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.005 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.005 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.001 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.001 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.002 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.002 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Name rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Name rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.008 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.008 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Installtid rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Installtid rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Requirename rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Requirename rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Sigmd5 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Sigmd5 rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Sha1header rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Sha1header rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/Packages rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/Packages rpm
> rpm.x86_64: W: non-standard-uid /var/lib/rpm/__db.006 rpm
> rpm.x86_64: W: non-standard-gid /var/lib/rpm/__db.006 rpm
> 
> Discussed already.

Yeah, but this shouldn't have been an issue anymore. The files get installed as
root:root since quite a while, but there's a leftover "%attr(0644, rpm, rpm)"
in the spec. Will fix.

> rpm.x86_64: W: dangerous-command-in-%posttrans rm
> 
> Life's dangerous.

The rm is necessary for now.

> rpm-build.x86_64: E: non-executable-script /usr/lib/rpm/perldeps.pl 0644
> 
> Investigate please.

Explained in the spec:
# avoid dragging in tonne of perl libs for an unused script
chmod 0644 $RPM_BUILD_ROOT/%{rpmhome}/perldeps.pl

> rpm-libs.x86_64: W: no-documentation
> rpm-python.x86_64: W: no-documentation
> 
> Upstream problem :).

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.




More information about the package-review mailing list