[Bug 480279] Review Request: gnome-globalmenu - centralized menu bar

bugzilla at redhat.com bugzilla at redhat.com
Wed Mar 18 00:35:34 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=480279





--- Comment #17 from Christoph Wickert <fedora at christoph-wickert.de>  2009-03-17 20:35:30 EDT ---
(In reply to comment #15)
>
> Does it build with mock?  

Why not test it yourself ;)


REVIEW FOR 
22be0f2045eb66f11a3b3251c07e72ea  gnome-globalmenu-0.7.4-4.fc10.src.rpm


OK - MUST: rpmlint must be run on every package. The output should be posted in
the review.
  $ rpmlint /var/lib/mock/fedora-rawhide-i386/result/*.rpm
  gnome-applet-globalmenu.i386: W: no-documentation
  gnome-globalmenu.i386: W: non-conffile-in-etc
/etc/gconf/schemas/gnome-globalmenu.schemas
  gnome-globalmenu-devel.i386: W: no-documentation
  xfce4-globalmenu-plugin.i386: W: no-documentation
  6 packages and 0 specfiles checked; 0 errors, 4 warnings.
All these errors are safe to ignore, because docs are included in the base
package and gconf schemas are no config files.

OK - MUST: The package is named according to the Package Naming Guidelines.
OK - MUST: The spec file name matches the base package %{name}, in the format
%{name}.spec.
OK - MUST: The package meets the Packaging Guidelines.
OK - MUST: The package is licensed with a Fedora approved license and meets the
Licensing Guidelines: GPLv3
FAIL - MUST: The License field in the package spec file does not match the
actual license.
OK - MUST: The license file from the source package is included in %doc.
OK - MUST: The spec file is in American English.
OK - MUST: The spec file for the package is legible.
FAIL - MUST: The sources used to build the package matches the upstream source
by MD5: The tarball inside the rpm has b9d861827b7ae8f4750df3dd450e0be6 while
the one from Google has 9becbaff8deda8acf46b4f89863c8aa3
OK - MUST: The package successfully compiles and builds into binary rpms on
i386
N/A - MUST: If the package does not successfully compile, build or work on an
architecture, then those architectures should be listed in the spec in
ExcludeArch.
OK - MUST: All build dependencies are listed in BuildRequires.
OK - MUST: The spec file handles locales properly with the %find_lang macro.
OK - MUST: The binary RPM package stores shared library files (not just
symlinks) in any of the dynamic linker's default paths and therefore calls
ldconfig in %post and %postun.
N/A - MUST: If the package is designed to be relocatable, the packager must
state this fact in the request for review, along with the rationalization for
relocation of that specific package.
FAIL - MUST: The package owns all directories that it creates:
%{_datadir}/doc/gnome-globalmenu/ is unowned and will be left behind after
uninstalling the package
OK - MUST: The package does not contain any duplicate files in the %files
listing.
OK - MUST: Permissions on files are set properly. Every %files section includes
a %defattr(...) line.
OK - MUST: The package has a %clean section, which contains rm -rf
$RPM_BUILD_ROOT.
OK - MUST: The package consistently uses macros, as described in the macros
section of Packaging Guidelines.
OK - MUST: The package contains code.
N/A - MUST: Large documentation files should go in a -doc subpackage.
OK - MUST: Files included as %doc do not affect the runtime of the application.
OK - MUST: Header files must be in a -devel package.
N/A - MUST: Static libraries must be in a -static package.
OK - MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'.
OK - MUST: If a package contains library files with a suffix (e.g.
libfoo.so.1.1), then library files that end in .so (without suffix) must go in
a -devel package. Note: The gtk modules are an exception here.
OK - MUST: In the vast majority of cases, devel packages must require the base
package using a fully versioned dependency: Requires: %{name} =
%{version}-%{release}
OK - MUST: The package does not contain any .la libtool archives.
N/A - MUST: Packages containing GUI applications must include a %{name}.desktop
file, and that file must be properly installed with desktop-file-install in the
%install section.
OK - MUST: The packages does not own files or directories already owned by
other packages.
OK - MUST: At the beginning of %install, the package runs rm -rf
$RPM_BUILD_ROOT.
OK - MUST: All filenames in rpm packages are valid UTF-8.

SHOULD Items:
N/A - SHOULD: If the source package does not include license text(s) as a
separate file from upstream, the packager SHOULD query upstream to include it.
N/A - SHOULD: The description and summary sections in the package spec file
should contain translations for supported Non-English languages, if available.
OK - SHOULD: The the package builds in mock.
OK - SHOULD: The package should compile and build into binary rpms on all
supported architectures.
FAIL - SHOULD: The package does not function as described. The Xfce4-panel
plugin does not work at all here and dual head seems a little buggy.
OK - SHOULD: If scriptlets are used, those scriptlets must be sane.
OK - SHOULD: Usually, subpackages other than devel should require the base
package using a fully versioned dependency.
OK - SHOULD: The placement of pkgconfig(.pc) files depends on their usecase,
and this is usually for development purposes, so should be placed in a -devel
pkg.
N/A - SHOULD: If the package has file dependencies outside of /etc, /bin,
/sbin, /usr/bin, or /usr/sbin consider requiring the package which provides the
file instead of the file itself.


Issues:
- License is unclear: Spec says GPLv2+ while package includes GPLv3 as COPYING.
Aditionaly the tarball includes two files GPLv2 and GPLv3. If a package has
parts that are licensed under different licenses we usually list them all in
the spec ("GPLv2 and GPLv3"). If you summarize this as "GPLv2+", you should
include the GPLv2+ in the package and you need to be aware of the fact that it
also means means "any later version", including GPLv4. 

- Download the sources again to make sure they really match. Also take care of
the timestamps, see
https://fedoraproject.org/wiki/Packaging/Guidelines#Timestamps

- Docs are incomplete: Include Authors and the correct license(s), but do not
include ChangeLog and NEWS as long as they are empty

- Docs are installed in the wrong dir:
%{_datadir}/doc/%{name}/ instead of 
%{_datadir}/doc/%{name}-version/
Just remove %{_datadir}/doc/%{name}/ completely during %install and let let rpm
take care of installing the docs:
  ...
  rm -f $RPM_BUILD_ROOT/%{_libdir}/libgnomenu.la
  rm -rf $RPM_BUILD_ROOT/%{_datadir}/doc/%{name}-version/
  ...
  %files -f %{name}.lang
  %defattr(-,root,root,-)
  %doc AUTHORS COPYING GPLv2 GPLv3 README

This also fixes the unowned dir mentioned above

- remove the "# comment" leftover

- What exactly do you want to achieve with the "%if 0%{?rhel5}" statements? Do
you want to build the xfce4-panel plugin only on Fedora and RHEL4?

- Does the xfce4-panel plugin work for you? For me it does nothing (I'm already
on Xfce 4.6, but the panel api has not changed from 4.4)

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




More information about the Fedora-package-review mailing list