Bug 504671 - Review Request: pocketsphinx - Speech recognition for handheld and embedded devices
Review Request: pocketsphinx - Speech recognition for handheld and embedded d...
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Andrew Colin Kissa
Fedora Extras Quality Assurance
Depends On: 503598
  Show dependency treegraph
Reported: 2009-06-08 14:36 EDT by Jerry James
Modified: 2009-08-27 18:56 EDT (History)
3 users (show)

See Also:
Fixed In Version: 0.5.1-3.fc11
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-08-27 18:56:20 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
andrew: fedora‑review+
kevin: fedora‑cvs+

Attachments (Terms of Use)

  None (edit)
Description Jerry James 2009-06-08 14:36:22 EDT
Spec URL: http://jjames.fedorapeople.org/pocketsphinx/pocketsphinx.spec
SRPM URL: http://jjames.fedorapeople.org/pocketsphinx/pocketsphinx-0.5.1-1.fc10.src.rpm
Description: PocketSphinx is a version of the open-source Sphinx-II speech recognition system which runs on handheld and embedded devices.
Comment 1 Andrew Colin Kissa 2009-08-21 07:30:26 EDT
Initial issues,

* The description
 - This is not accurate as it gives the impression that this will only be used on 
   embedded and handheld devices, yet the home page states it works equally well
   on a desktop which is where most fedora users will possibly encounter it.

* .desktop file
- Needs a %{name}.desktop file http://fedoraproject.org/wiki/Packaging/Guidelines#.desktop_file_creation
Comment 2 Andrew Colin Kissa 2009-08-21 07:36:41 EDT
Another issue.

* Non Standard Group
- Applications/Speech, am sure you can safely use Applications/Multimedia instead.
Comment 3 Jerry James 2009-08-21 13:03:08 EDT
Thank you for the comments.  With respect to comment 1, I have updated the summary and description.  On the other hand, I have not provided a desktop file, as I do not believe one is needed.  There is no GUI application in this package, just command line tools.  There are GUI applications which use pocketsphinx, some of which I will be submitting Real Soon Now.  Those applications will have desktop files.

With respect to comment 2, I have changed the group.

I have also made a few other minor cleanups to the spec file.  New versions are available here:

Comment 4 Andrew Colin Kissa 2009-08-21 13:08:34 EDT
No problem, the screenshot on the projects homepage looked like a GUI application to me, i am going to do a full review now.
Comment 5 Jerry James 2009-08-21 13:12:32 EDT
Oh, yeah, that is confusing.  That's a screenshot of this: http://opie.handhelds.org/.  Thanks for the reviews.
Comment 6 Andrew Colin Kissa 2009-08-21 14:17:41 EDT
Yep that's correct, that's the screenshot. And you are welcome.

FIX: rpmlint must be run on every package

rpmlint rpmbuild/RPMS/i586/pocketsphinx-* rpmbuild/SRPMS/pocketsphinx-0.5.1-2.fc11.src.rpm rpmbuild/SPECS/pocketsphinx.spec 
pocketsphinx.i586: E: zero-length /usr/share/pocketsphinx/model/lm/turtle/turtle.handdict
pocketsphinx-libs.i586: W: no-documentation
pocketsphinx-plugin.i586: W: no-documentation
pocketsphinx-python.i586: W: no-documentation
7 packages and 1 specfiles checked; 1 errors, 3 warnings.

Based on the README turtle.handdict can be safely removed

OK: The package must be named according to the Package Naming Guidelines
OK: The spec file name must match the base package
OK: The package must meet the Packaging Guidelines
OK: The package must be licensed with a Fedora approved license
FIX: The License field in the package spec file must match the actual license

According to the copying file the gstreamer plugin is LGPLv2 so you should be using BSD and LGPLv2

OK: License text included
OK: The spec file must be written in American English
OK: The spec file for the package MUST be legible
OK: The sources used to build the package must match the upstream source

sha256sum pocketsphinx-0.5.1.tar.bz2 rpmbuild/SOURCES/pocketsphinx-0.5.1.tar.bz2 
3c939b806db9a1928100730a08cdf4dc40a70dc4f2df32f00a58838fe0a7dfd9  pocketsphinx-0.5.1.tar.bz2
3c939b806db9a1928100730a08cdf4dc40a70dc4f2df32f00a58838fe0a7dfd9  rpmbuild/SOURCES/pocketsphinx-0.5.1.tar.bz2

OK: The package MUST successfully compile and build into binary rpms on at least one primary architecture
OK: ExcludeArch
OK: All build dependencies must be listed in BuildRequires
N\A: The spec file MUST handle locales properly
OK: Must call ldconfig in %post and %postun
N\A: If the package is designed to be relocatable
OK: A package must own all directories that it creates
OK: A Fedora package must not list a file more than once
OK: Permissions on files must be set properly
OK: Each package must have a %clean section
OK: Each package must consistently use macros
OK: The package must contain code, or permissable content
N\A: Large documentation files must go in a -doc subpackage
OK: If a package includes something as %doc, it must not affect the runtime of the application
OK: Header files must be in a -devel package
N\A: Static libraries must be in a -static package
OK: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'
OK: Library files that end in .so (without suffix) must go in a -devel package
OK: In the vast majority of cases, devel packages must require the base package

Requires the lib subpackage.

OK: Packages must NOT contain any .la libtool archives
N\A: Packages containing GUI applications must include a %{name}.desktop file
OK: Packages must not own files or directories already owned by other packages
OK: At the beginning of %install, each package MUST run rm -rf %{buildroot} (or $RPM_BUILD_ROOT)
OK: All filenames in rpm packages must be valid UTF-8

Fix the lint error and License and its good to go, you will need to push sphinxbase first though.
Comment 7 Jerry James 2009-08-21 14:37:18 EDT
Good catch on the license.  It appears to be LGPLv2+, right?  I see the "or later" clause in there.  New versions:

Comment 8 Andrew Colin Kissa 2009-08-21 15:05:05 EDT
Yes thats correct LGPLv2+, Looks Good.

    This package (pocketsphinx) is APPROVED by topdog
Comment 9 Jerry James 2009-08-21 15:14:34 EDT
New Package CVS Request
Package Name: pocketsphinx
Short Description: Real-time speech recognition
Owners: jjames
Branches: F-11
Comment 10 Kevin Fenzi 2009-08-24 15:37:52 EDT
cvs done.
Comment 11 Fedora Update System 2009-08-26 11:30:24 EDT
pocketsphinx-0.5.1-3.fc11 has been submitted as an update for Fedora 11.
Comment 12 Fedora Update System 2009-08-27 18:56:15 EDT
pocketsphinx-0.5.1-3.fc11 has been pushed to the Fedora 11 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.