Bug 668834

Summary: Review Request: cutecw - CW (Morse Code) training software
Product: [Fedora] Fedora Reporter: Wes Hardaker <wjhns174>
Component: Package ReviewAssignee: Ankur Sinha (FranciscoD) <sanjay.ankur>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting, sanjay.ankur
Target Milestone: ---Flags: sanjay.ankur: fedora-review+
j: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: cutecw-0.4-3.fc13 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-01-22 20:34:20 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:

Description Wes Hardaker 2011-01-11 18:45:26 UTC
Spec URL: http://www.hardakers.net/temp/cutecw.spec
SRPM URL: http://www.hardakers.net/temp/cutecw-0.4-1.fc15.src.rpm
Description: Most morse code (CW) training requires you to learn everything at once without a training process. This application changes that and separates training into phases.

Comment 1 Ankur Sinha (FranciscoD) 2011-01-12 15:07:20 UTC
Fails to build on mock 


DEBUG: install -m 644 -p /builddir/build/BUILD/cutecw-0.4/icons/64x64/cutecw.png /builddir/build/BUILDROOT/cutecw-0.4-1.fc15.i386/usr/share/icons/hic
olor/64x64/apps/
DEBUG: + /bin/mkdir -p '/builddir/build/BUILDROOT/cutecw-0.4-1.fc15.i386/%{_iconsdir}/hicolor/scalable/apps/'
DEBUG: + /bin/cp icons/cutecw.svg '/builddir/build/BUILDROOT/cutecw-0.4-1.fc15.i386/%{_iconsdir}/hicolor/scalable/apps/'
DEBUG: + desktop-file-install --dir=/builddir/build/BUILDROOT/cutecw-0.4-1.fc15.i386/usr/share/applications /builddir/build/SOURCES/cutecw.desktop
DEBUG: /var/tmp/rpm-tmp.BxWPS4: line 42: desktop-file-install: command not found
DEBUG: error: Bad exit status from /var/tmp/rpm-tmp.BxWPS4 (%install)
DEBUG: RPM build errors:
DEBUG:     Bad exit status from /var/tmp/rpm-tmp.BxWPS4 (%install)
DEBUG: Child returncode was: 1
INFO: EXCEPTION: Command failed. See logs for output.
 # ['bash', '--login', '-c', 'rpmbuild -bb --target i686 --nodeps builddir/build/SPECS/cutecw.spec']
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/mock/trace_decorator.py", line 70, in trace
    result = func(*args, **kw)
  File "/usr/lib/python2.7/site-packages/mock/util.py", line 317, in do
    raise mock.exception.Error, ("Command failed. See logs for output.\n # %s" % (command,), child.returncode)
Error: Command failed. See logs for output.
 # ['bash', '--login', '-c', 'rpmbuild -bb --target i686 --nodeps builddir/build/SPECS/cutecw.spec']
INFO: LEAVE do --> EXCEPTION RAISED


Please correct this, I'll do a complete review.

You need a 

Requires: desktop-file-utils 

http://fedoraproject.org/wiki/Packaging/Guidelines#Desktop_files

iirc

Thanks,
Ankur

Comment 2 Ankur Sinha (FranciscoD) 2011-01-12 15:08:07 UTC
Another thing: Are you a sponsored packager already Wes?

Comment 3 Wes Hardaker 2011-01-12 15:55:20 UTC
Spec URL: http://www.hardakers.net/temp/cutecw.spec
SRPM URL: http://www.hardakers.net/temp/cutecw-0.4-2.fc15.src.rpm

I've added desktop-file-utils to the buildreqs which should fix the mock issue.

Yes, I'm already an approved packager.  Thanks for asking!

Comment 4 Ankur Sinha (FranciscoD) 2011-01-12 17:38:54 UTC
Hi,

Still won't build on mock. :)

DEBUG: + umask 022   
DEBUG: + cd /builddir/build/BUILD
DEBUG: + cd cutecw-0.4
DEBUG: + DOCDIR=/builddir/build/BUILDROOT/cutecw-0.4-2.fc15.i386/usr/share/doc/cutecw-0.4
DEBUG: + export DOCDIR
DEBUG: + rm -rf /builddir/build/BUILDROOT/cutecw-0.4-2.fc15.i386/usr/share/doc/cutecw-0.4
DEBUG: + /bin/mkdir -p /builddir/build/BUILDROOT/cutecw-0.4-2.fc15.i386/usr/share/doc/cutecw-0.4
DEBUG: + cp -pr LICENSE README.org /builddir/build/BUILDROOT/cutecw-0.4-2.fc15.i386/usr/share/doc/cutecw-0.4
DEBUG: + exit 0
DEBUG: RPM build errors:
DEBUG:     File must begin with "/": %{_iconsdir}/hicolor/*/apps/*.png
DEBUG:     File must begin with "/": %{_iconsdir}/hicolor/*/apps/*.svg
DEBUG: Child returncode was: 1
INFO: EXCEPTION: Command failed. See logs for output.
 # ['bash', '--login', '-c', 'rpmbuild -bb --target i686 --nodeps builddir/build/SPECS/cutecw.spec']
Traceback (most recent call last):


Ankur.

Comment 5 Wes Hardaker 2011-01-12 21:17:35 UTC
Spec URL: http://www.hardakers.net/temp/cutecw.spec
SRPM URL: http://www.hardakers.net/temp/cutecw-0.4-2.fc15.src.rpm

Huh.  I suspect the _iconsdir macro must exist only in some versions of RPM (build) and not others.  Anyway, in the above version I set it to using %{_datadir}/icons which I know will work better.

Comment 6 Wes Hardaker 2011-01-12 22:52:36 UTC
Ok, admittedly the last time I tried to use mock (back in the FC6 days) it was a pain.  It's gotten much better.  The above -3 version (I just noticed the link is wrong) builds for me under mock.

Spec URL: http://www.hardakers.net/temp/cutecw.spec
SRPM URL: http://www.hardakers.net/temp/cutecw-0.4-3.fc15.src.rpm

Comment 7 Ankur Sinha (FranciscoD) 2011-01-13 02:32:11 UTC
Review:

+ OK
? Issue
- NA

+ Package meets naming and packaging guidelines
+ Spec file matches base package name.
+ Spec has consistant macro usage.
+ Meets Packaging Guidelines.
+ License
+ License field in spec matches
+ License file included in package
+ Spec in American English
+ Spec is legible.
+ Sources match upstream md5sum:
[ankur@ankur rpmbuild]$ md5sum cutecw-0.4.tar.gz SOURCES/cutecw-0.4.tar.gz 
0e0439ecf047e67e31be6ebacabdf4dd  cutecw-0.4.tar.gz
0e0439ecf047e67e31be6ebacabdf4dd  SOURCES/cutecw-0.4.tar.gz


+ Package needs ExcludeArch
+ BuildRequires correct
- Spec handles locales/find_lang
- Package is relocatable and has a reason to be.
+ Package has %defattr and permissions on files is good.
+ Package has a correct %clean section.
+ Package has correct buildroot
%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+ Package is code or permissible content.
- Doc subpackage needed/used.
+ Packages %doc files don't affect runtime.

- Headers/static libs in -devel subpackage.
- Spec has needed ldconfig in post and postun
- .pc files in -devel subpackage/requires pkgconfig
- .so files in -devel subpackage.
- -devel package Requires: %{name} = %{version}-%{release}
- .la files are removed.

+ Package is a GUI app and has a .desktop file

+ Package compiles and builds on at least one arch.
+ Package has no duplicate files in %files.
+ Package doesn't own any directories other packages own.
+ Package owns all the directories it creates.
+ No rpmlint output.
[ankur@ankur SPECS]$ rpmlint cutecw.spec ../RPMS/x86_64/cutecw-0.4-3.fc14.x86_64.rpm ../SRPMS/cutecw-0.4-3.fc15.src.rpm /var/lib/mock/fedora-rawhide-i386/result/*.rpm
cutecw.x86_64: W: no-manual-page-for-binary cutecw
cutecw.i686: W: no-manual-page-for-binary cutecw
5 packages and 1 specfiles checked; 0 errors, 2 warnings.
[ankur@ankur SPECS]$ 


- final provides and requires are sane:
(include output of for i in *rpm; do echo $i; rpm -qp --provides $i; echo =; rpm -qp --requires $i; echo; done
manually indented after checking each line.  I also remove the rpmlib junk and anything provided by glibc.)

== cutecw-0.4-3.fc15.i686.rpm ==
Provides:
cutecw = 0.4-3.fc15   
cutecw(x86-32) = 0.4-3.fc15

Requires:
/bin/sh
/bin/sh
/bin/sh
libQtCore.so.4
libQtGui.so.4
libQtMultimedia.so.4  
...
rtld(GNU_HASH)


== cutecw-0.4-3.fc15.src.rpm ==
Provides:

Requires:
qt-devel >= 4.7
desktop-file-utils

== cutecw-debuginfo-0.4-3.fc15.i686.rpm ==
Provides:
cutecw-debuginfo = 0.4-3.fc15
cutecw-debuginfo(x86-32) = 0.4-3.fc15


SHOULD Items:

+ Should build in mock.
+ Should build on all supported archs
http://koji.fedoraproject.org/koji/taskinfo?taskID=2718322

+ Should function as described.
+ Should have sane scriptlets.
- Should have subpackages require base package with fully versioned depend.
+ Should have dist tag
+ Should package latest version
- check for outstanding bugs on package. (For core merge reviews)

Issues:

1. the buildroot and clean section etc. can be removed
http://fedoraproject.org/wiki/Packaging/Guidelines#BuildRoot_tag

2. Please add a comment describing the patch in the spec
http://fedoraproject.org/wiki/Packaging/Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment

3. Please rename the patch to %{name}-%{reason}.patch.


Please correct issues #2,#3 before you set up the git repository since they are explicitly required in the guidelines. 

Rest of the package looks ok. 

+++ APPROVED +++

Comment 8 Wes Hardaker 2011-01-13 15:18:09 UTC
Thanks for the review and suggestions!  I've made the appropriate changes :-)

Comment 9 Wes Hardaker 2011-01-13 15:26:38 UTC
New Package SCM Request
=======================
Package Name: cutecw
Short Description: A CW (Morse Code) Training Program
Owners: hardaker
Branches: f13 f14

Comment 10 Jason Tibbitts 2011-01-13 17:25:26 UTC
Git done (by process-git-requests).

Comment 11 Fedora Update System 2011-01-13 21:08:49 UTC
cutecw-0.4-3.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/cutecw-0.4-3.fc13

Comment 12 Fedora Update System 2011-01-14 20:36:34 UTC
cutecw-0.4-3.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 cutecw'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/cutecw-0.4-3.fc13

Comment 13 Fedora Update System 2011-01-22 20:34:14 UTC
cutecw-0.4-3.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.