Bug 635450

Summary: Review Request: docky - MacOS-like docker app
Product: [Fedora] Fedora Reporter: Lukas Zapletal <lzap>
Component: Package ReviewAssignee: Hans de Goede <hdegoede>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: benjavalero, che666, chkr, fedora-package-review, hdegoede, notting
Target Milestone: ---Flags: hdegoede: fedora-review+
j: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: docky-2.0.7-3.fc14 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-11-24 22:39:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 635451    
Bug Blocks:    

Description Lukas Zapletal 2010-09-19 20:23:43 UTC
Spec URL: http://static.zapletalovi.com/fedora/rpm/docky/docky.spec
SRPM URL: http://static.zapletalovi.com/fedora/rpm/docky/docky-2.0.6-1.fc13.src.rpm
Description: 
Docky is an advanced shortcut bar that sits at the bottom, top, and/or sides
of your screen. It provides easy access to some of the files, folders,
and applications on your computer, displays which applications are
currently running, holds windows in their minimized state, and more.

PLEASE NOTE
There is a patch attached that removes zoom effect due to a potential violation of US Patent 7434177.

My template was "gnome-do" package because docky is very similar (acually its for of gnome-do from which docking functionality will be removed soon).

The package requires gio-sharp which is not in repositories - I have created SPEC/SRPM. I will include reference to the bugzilla with the submitted spec.

This is my first package, I would love to find a sponsor :-)

Comment 1 Lukas Zapletal 2010-09-19 20:48:36 UTC
Dependency on 635451 (gio-sharp library) added.

Typo correction: ... (acually its *fork* of gnome-do from which docking functionality will be removed soon) ...

Comment 2 Lukas Zapletal 2010-09-19 20:55:38 UTC
rpmlint:
0 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 3 Christian Krause 2010-10-16 22:43:44 UTC
just some comments after a first quick look:

1. rpmlint of the binary package revealed:
docky.i686: W: invalid-license GPL
Please have a look at
http://fedoraproject.org/wiki/Packaging:LicensingGuidelines 
and
http://fedoraproject.org/wiki/Licensing
for the correct license tag.

2. if desktop-file-install is used then you don't need to call desktop-file-validate:
http://fedoraproject.org/wiki/Packaging:Guidelines#desktop-file-install_usage

3. the scriptlets for updating the gtk icon cache are not correct, please check:
http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache

4. please re-check the build requirements, some of them (e.g. autoconf, automake and libtool) are not necessary (they are only needed when the configure script is actually rebuilt)

5. it looks like that docky brings its own gio-sharp with it - please can you check whether the library from the system could be used?

6. please update to the newest upstream release

Comment 4 Lukas Zapletal 2010-10-18 20:37:10 UTC
Hello,

thank you for your review.

1-4) corrected

5) yes I have missed that! Unfortunately its not configurable. I could create a patch for it but since gio-sharp is not stabilized library for better stability I'd recommend to keep it "as is". I have made a comment in the spec and once this library reaches some API stability I could use the one from system.

6) Bumped

But there is still error about env and python I am not able to correct.

$ rpmlint docky-2.0.7-1.fc13.i686.rpm 
docky.i686: E: no-binary
docky.i686: E: non-executable-script /usr/lib/python2.6/site-packages/docky/docky.py 0644L /usr/bin/env
docky.i686: W: no-manual-page-for-binary docky
1 packages and 0 specfiles checked; 2 errors, 1 warnings.

http://static.zapletalovi.com/fedora/rpm/docky/2.0.7-1/docky-2.0.7-1.fc13.src.rpm

http://static.zapletalovi.com/fedora/rpm/docky/2.0.7-1/docky.spec

Comment 5 Rudolf Kastl 2010-10-23 13:44:30 UTC
one obvious issue i have come across:

Requires: mono -> Requires: mono-core

else the package doesent install.

Comment 6 Lukas Zapletal 2010-10-25 07:18:30 UTC
Hello Rudolf,

you are right. I have been investigating this on the weekend and I was wondering why yum tells me there is no "mono" package. :-) Fixed.

http://static.zapletalovi.com/fedora/rpm/docky/2.0.7-2/

$ rpmlint docky-2.0.7-2.fc13.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

$ rpmlint docky-2.0.7-2.fc13.i686.rpm 
docky.i686: E: no-binary
docky.i686: E: non-executable-script /usr/lib/python2.6/site-packages/docky/docky.py 0644L /usr/bin/env
docky.i686: W: no-manual-page-for-binary docky
1 packages and 0 specfiles checked; 2 errors, 1 warnings.

I am still not sure about the second rpmlint error. The docky.py has #!env python in it and this should be ok...

Thanks!

Comment 7 Lukas Zapletal 2010-11-03 09:12:10 UTC
I have uploaded there also F14 version.

Comment 8 Hans de Goede 2010-11-03 12:04:49 UTC
Hi Lukáš,

I'm a sponsor and I like how you've been very responsive so far in this bug
report. I would like to sponsor you, but first I would like to see some more of
your work / packaging skills. Perhaps there is another piece of sw which you
would like to have packaged, which you can also package up and submit a review
request for?

Or perhaps you can do an unofficial package review as described here:
http://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group

Regards,

Hans

Comment 9 Lukas Zapletal 2010-11-04 15:04:39 UTC
Hans, thank you for your support.

I will try to pick up something from the wishlist. If you have a tip just let me know. I have already tried Crafty chess engine but due licensing issues I had to drop it (legal list confirmed me its not compatible license).

Will make a new package tonight.

Comment 10 Hans de Goede 2010-11-04 15:40:27 UTC
Hi,

(In reply to comment #9)
> Hans, thank you for your support.
> 
> I will try to pick up something from the wishlist.

Great!

> If you have a tip just let me know.

I think it is best if you select things to package yourself, you'll end up
maintaining them too after all. But if you just want some packaging experience
and don't mind much what you package, let me know and I'm sure I can come up
with something. 3 areas which I have in mind for possible candidates are
java, mingw or gaming packages. If you want me to list a few things let me know
which area(s) you prefer.

Regards,

Hans

Comment 11 Hans de Goede 2010-11-05 08:22:49 UTC
Hi,

As discussed I'll review this and 2 more of you're packages and then sponsor you. Taking and removing NEEDSPONSOR blocker.

Regards,

Hans

Comment 12 Hans de Goede 2010-11-05 09:19:45 UTC
Good:
- rpmlint checks return:
docky.x86_64: E: no-binary
docky.x86_64: W: no-manual-page-for-binary docky
docky-devel.x86_64: W: no-documentation
These can be ignored
- package meets naming guidelines
- package meets packaging guidelines
- spec file legible, in am. english
- source matches upstream
- package compiles on devel (x86)
- no missing BR
- no unnecessary BR
- properly handles locales
- not relocatable
- no duplicate files
- permissions ok
- %clean ok
- macro use consistent
- code, not content
- no need for -docs
- nothing in %doc affects runtime
- .desktop file properly handled

Needs work:
- rpmlint checks return:
docky.x86_64: E: non-executable-script /usr/lib/python2.7/site-packages/docky/docky.py 0644L /usr/bin/env

The problem rpmlint is complaining about here is that docky.py contains a shebang line (#!.... at the top), but is not executable (mode 0644 rather then
0755). Looking at the .py file it is not meant to be directly executed, only to be imported. So the correct solution is too remove the shebang line from the .py file.

-/usr/bin/docky has the build system dir embedded in it, in my case:
if [ "x$SCRIPT_PATH" = "x/home/hans/rpmbuild/BUILD/docky-2.0.7/Docky/bin/Debug"
] ||
   [ "x$SCRIPT_PATH" = "x/home/hans/rpmbuild/BUILD/docky-2.0.7/Docky" ] ; then
    echo "*** Running uninstalled ***"
    DOCKY_EXE="/home/hans/rpmbuild/BUILD/docky-2.0.7/Docky/bin/Debug/Docky.exe"
else
    DOCKY_EXE="/usr/lib64/docky/Docky.exe"
fi

Please remove this bit from /usr/bin/docky

-The disabling of zooming may not be enough if this really is a problem, I'll
 mail Spot about this and CC you.

-I'm not so hot on installing a .desktop file under /etc/xdg/autostart, this
 means that if this is installed on a system because one user wants to use it,
 it will autostart for all users. I think this file should not be shipped.

-please include NEWS in %doc

-The license tag is wrong. Docky is GPLv3+ not GPLv3 and the included
 gio-sharp.dll is LGPLv2, but that does not need to be mentioned in license
 as once distributed together the license for the total becomes GPLv3+
 gapi_codegen however is a problem, as that is licensed GPLv2, so either
 the license tag needs to become "GPLv3+ and GPLv2" with a comment that
 the GPLv2 is for gapi_codegen, or we could remove gapi_codegen from the
 package, which seems best as I assume this will not be needed during runtime.

-Missing Requires: hicolor-icon-theme
 (for /usr/share/icons/hicolor dir ownership)

Comment 13 Lukas Zapletal 2010-11-10 22:26:20 UTC
Almost done. What about adding "X-GNOME-Autostart-enabled=true" in the /etc/xdg/*desktop file? I could distribute it then maybe. I would love to allow user to autostart it but disabled by default.

I need to investigate it tomorrow. There must be a way. Then I submit.

Comment 14 Lukas Zapletal 2010-11-11 08:43:15 UTC
$ rpmlint docky-2.0.7-3.fc14.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

$ rpmlint docky-2.0.7-3.fc14.i686.rpm docky-devel-2.0.7-3.fc14.i686.rpm 
docky.i686: E: no-binary
docky.i686: W: no-manual-page-for-binary docky
docky-devel.i686: W: no-documentation
2 packages and 0 specfiles checked; 1 errors, 2 warnings.

Shebang - done

Bits from start script - done

Zooming - dangerous code removed

Desktop icon - disabled by default (for discussion)

NEWS - done

License - corrected (gapi_codegen not distributed)

Require - added

http://static.zapletalovi.com/fedora/rpm/docky/2.0.7-3/

Comment 15 Hans de Goede 2010-11-11 12:07:30 UTC
(In reply to comment #14)
> Desktop icon - disabled by default (for discussion)
> 

"X-GNOME-Autostart-enabled=false" is a good solution, I like!

All other items fixed: Approved!

I've added you to the packager group in the account system and sponsored you, so you should be able to proceed with doing an SCM request:
http://fedoraproject.org/wiki/PackageMaintainers/CVSAdminProcedure

Comment 16 Lukas Zapletal 2010-11-11 15:19:26 UTC
New Package SCM Request
=======================
Package Name: docky
Short Description: Advanced shortcut bar written in Mono
Owners: lzap
Branches: f14
InitialCC: mono-sig

Comment 17 Jason Tibbitts 2010-11-15 14:20:35 UTC
Git done (by process-git-requests).

Comment 18 Fedora Update System 2010-11-16 17:26:14 UTC
docky-2.0.7-3.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/docky-2.0.7-3.fc14

Comment 19 Fedora Update System 2010-11-16 23:13:57 UTC
docky-2.0.7-3.fc14 has been pushed to the Fedora 14 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 docky'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/docky-2.0.7-3.fc14

Comment 20 Fedora Update System 2010-11-24 22:39:06 UTC
docky-2.0.7-3.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.