Bug 554760 - Review Request: x-tile - A GNOME panel applet to tile windows
Summary: Review Request: x-tile - A GNOME panel applet to tile windows
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Christoph Wickert
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 554714
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-01-12 15:27 UTC by Mohamed El Morabity
Modified: 2010-05-10 23:43 UTC (History)
3 users (show)

Fixed In Version: x-tile-1.4-2.fc13
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-05-10 17:04:53 UTC
Type: ---
Embargoed:
christoph.wickert: fedora-review+
kevin: fedora-cvs+


Attachments (Terms of Use)

Description Mohamed El Morabity 2010-01-12 15:27:12 UTC
Spec URL: http://melmorabity.fedorapeople.org/packages/x-tile/x-tile.spec
SRPM URL: http://melmorabity.fedorapeople.org/packages/x-tile/x-tile-1.3-1.fc12.src.rpm
Description: X-tile is a GNOME applet for your panel (or optionally a standalone application)
that allows you to select a number of windows and tile them in different
ways. This is especially useful for comparing products in separate web pages, or
for programmers refering to documentation as they are programming.

This package requires python-psutil (see bug 554714) to work.

This package builds fine on mock.

About rpmlint :
* on SRPM:
   x-tile.src:40: E: hardcoded-library-path in %{_prefix}/lib/bonobo/servers
   A library path is hardcoded to one of the following paths: /lib, /usr/lib. It
   should be replaced by something like /%{_lib} or %{_libdir}.

   x-tile.src:41: E: hardcoded-library-path in %{_prefix}/lib/bonobo/servers
   A library path is hardcoded to one of the following paths: /lib, /usr/lib. It
   should be replaced by something like /%{_lib} or %{_libdir}.

   x-tile.src:64: E: hardcoded-library-path in %{_prefix}/lib/bonobo/servers/*.server
   A library path is hardcoded to one of the following paths: /lib, /usr/lib. It
   should be replaced by something like /%{_lib} or %{_libdir}.

* on RPM:
   x-tile.noarch: E: explicit-lib-dependency libbonobo
   You must let rpm find the library dependencies by itself. Do not put unneeded
   explicit Requires: tags.

For this last issue, I had to add an explicit Requires on libbonobo which owns the folder /usr/lib/bonobo/servers. The package installs a .server in this directory. Note that libbonobo.x86_64 owns both /usr/lib64/bonobo/servers and /usr/lib/bonobo/servers.
To avoid to make my package arch-specific although there is no binary, I choosed to install the .server file delivered with the sources explicitely in /usr/lib/bonobo/servers. This folder is taken into account by libbobobo even in x86_64 platforms, so no particular issue is expected in x86_64.
I don't know if there is a macro to avoid an explicit reference to "lib" to make rpmlint silent, I found nothing special about this when doing a grep on both /etc/rpm/ and /usr/lib/rpm/ ^^

Comment 1 Mohamed El Morabity 2010-03-07 01:38:15 UTC
Update to 1.3.2. This version introduces locales.

Spec URL: http://melmorabity.fedorapeople.org/packages/x-tile/x-tile.spec
SRPM URL:
http://melmorabity.fedorapeople.org/packages/x-tile/x-tile-1.3.2-1.fc12.src.rpm

Comment 2 Christoph Wickert 2010-04-12 00:21:54 UTC
Can you please update to 1.4, and then I will do the review. 

You think it makes sense to package the the standalone binary and the panel applet separately? Would be handy for non-GNOME users.

Comment 3 Mohamed El Morabity 2010-04-12 12:36:13 UTC
Here is the update to the 1.4 version :
Spec URL: http://melmorabity.fedorapeople.org/packages/x-tile/x-tile.spec
SRPM URL: http://melmorabity.fedorapeople.org/packages/x-tile/x-tile-1.4-1.fc12.src.rpm

(In reply to comment #2)
> You think it makes sense to package the the standalone binary and the panel
> applet separately? Would be handy for non-GNOME users.    
Since the executable already depends on GNOME components, I don't think there is such benefits in terms of dependencies to package the applet separately for non-GNOME users. By the way the applet was tested by developers on XFCE and even KDE, and all works fine :-)

Comment 4 Christoph Wickert 2010-04-24 09:41:53 UTC
Sorry it took so long, somehow I this dropped of my radar.

(In reply to comment #3) 
> Since the executable already depends on GNOME components, I don't think there
> is such benefits in terms of dependencies to package the applet separately for
> non-GNOME users.

You are right, the executable already imports gnomeapplet, so there is not much we can do to avoid a dependency on gnome-panel.


REVIEW for 383cc581f8cc27172df8e08a957b1244  x-tile-1.4-1.fc12.src.rpm

OK - MUST: $ rpmlint /var/lib/mock/fedora-rawhide-x86_64/result/x-tile-1.4-1.fc14.*
x-tile.noarch: E: explicit-lib-dependency libbonobo
x-tile.src:50: E: hardcoded-library-path in %{_prefix}/lib/bonobo/servers
x-tile.src:51: E: hardcoded-library-path in %{_prefix}/lib/bonobo/servers
x-tile.src:84: E: hardcoded-library-path in %{_prefix}/lib/bonobo/servers/*.server
2 packages and 0 specfiles checked; 4 errors, 0 warnings.

All these can be ignored. The package is noarch, so lib must always be lib but not lib64.

OK - MUST: named according to the Package Naming Guidelines
OK - MUST: spec file name matches the base package %{name}
Ok - MUST: package meets the Packaging Guidelines
OK - MUST: Fedora approved license and meets the Licensing Guidelines: GPLv2+
OK - MUST: License field in spec file matches the actual license
OK - MUST: license file included in %doc
OK - MUST: spec is in American English
OK - MUST: spec is legible
OK - MUST: sources match the upstream source by MD5 3f8b113426ee679ce26f2ece0e76a807
OK - MUST: successfully compiles and builds into binary rpms on x86_64 (noarch package)
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: handles locales properly with %find_lang
N/A - MUST: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun.
OK - MUST: Package does not bundle copies of system libraries.
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.
OK - MUST: owns all directories that it creates
OK - MUST: no duplicate files in the %files listing
OK - MUST: Permissions on files are set properly, includes %defattr(...)
OK - MUST: package has a %clean section, which contains rm -rf $RPM_BUILD_ROOT.
OK - MUST: consistently uses macros
OK - MUST: package contains code, or permissable content
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
N/A - MUST: Header files must be in a -devel package
N/A - MUST: Static libraries must be in a -static package
N/A - MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'.
N/A - MUST: If a package contains library files with a suffix, then library files that end in .so must go in a -devel package.
N/A - MUST: devel packages must require the base package using a fully versioned dependency
OK - MUST: The package does not contain any .la libtool archives.
OK - MUST: Packages containing GUI applications must include a %{name}.desktop file, and that file must be properly validated desktop-file-validate in the %install section.
OK - MUST: package 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 valid UTF-8


SHOULD Items:
OK - SHOULD: Source package includes license text(s) as a separate file.
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: builds in mock.
OK - SHOULD: compiles and builds into binary rpms on all supported architectures (noarch).
OK - SHOULD: functions as described.
OK - SHOULD: Scriptlets are used, those scriptlets must be sane.
N/A - SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
N/A - SHOULD: pkgconfig(.pc) files should be placed in a -devel pkg
N/A - SHOULD: no file dependencies outside of /etc, /bin, /sbin, /usr/bin, or /usr/sbin


Other items:
OK - latest stable version
OK - SourceURL valid
OK - docs complete


Issues:
- Some lines in description are longer than 80 characters (81). I wonder why rpmlint didn't catch this.
- I usually prefer install over cp because it can set the permissions as well. But this is your decision.


Please fix the description and consider the package APPROVED.

Comment 5 Mohamed El Morabity 2010-04-24 11:04:32 UTC
Thanks for the review :-)
About the description lines, the longest are exactly 80-character long in fact. So rpmlint doesn't warn about them ^^.

Comment 6 Mohamed El Morabity 2010-04-24 11:08:02 UTC
New Package CVS Request
=======================
Package Name: x-tile
Short Description: A GNOME panel applet to tile windows
Owners: melmorabity
Branches: F-11 F-12 F-13
InitialCC:

Comment 7 Kevin Fenzi 2010-04-26 03:34:55 UTC
CVS done (by process-cvs-requests.py).

Comment 8 Fedora Update System 2010-05-04 20:13:17 UTC
x-tile-1.4-2.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/x-tile-1.4-2.fc13

Comment 9 Fedora Update System 2010-05-04 20:21:28 UTC
x-tile-1.4-2.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/x-tile-1.4-2.fc12

Comment 10 Fedora Update System 2010-05-04 20:28:55 UTC
x-tile-1.4-2.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/x-tile-1.4-2.fc11

Comment 11 Fedora Update System 2010-05-05 07:26:39 UTC
x-tile-1.4-2.fc13 has been pushed to the Fedora 13 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 x-tile'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/x-tile-1.4-2.fc13

Comment 12 Fedora Update System 2010-05-06 03:43:11 UTC
x-tile-1.4-2.fc12 has been pushed to the Fedora 12 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 x-tile'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/x-tile-1.4-2.fc12

Comment 13 Fedora Update System 2010-05-06 03:45:17 UTC
x-tile-1.4-2.fc11 has been pushed to the Fedora 11 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 x-tile'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/x-tile-1.4-2.fc11

Comment 14 Fedora Update System 2010-05-10 17:04:43 UTC
x-tile-1.4-2.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 15 Fedora Update System 2010-05-10 17:10:44 UTC
x-tile-1.4-2.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 16 Fedora Update System 2010-05-10 23:43:34 UTC
x-tile-1.4-2.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.