Bug 968262

Summary: Review Request: xboxdrv - Userspace Xbox/Xbox360 Gamepad Driver for Linux
Product: [Fedora] Fedora Reporter: Marcel Wysocki <maci>
Component: Package ReviewAssignee: Douglas Schilling Landgraf <dougsland>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: dougsland, notting, package-review
Target Milestone: ---Flags: dougsland: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: xboxdrv-0.8.5-2.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-01 01:40:41 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:    
Bug Blocks: 1180895    

Description Marcel Wysocki 2013-05-29 10:36:16 UTC
Spec URL: http://maci.satgnu.net/rpmbuild/SPECS/xboxdrv.spec
SRPM URL: http://maci.satgnu.net/rpmbuild/SRPMS/xboxdrv-0.8.5-1.fc19.src.rpm
KOJI URL: http://koji.fedoraproject.org/koji/taskinfo?taskID=5437732
Description: This is a Xbox/Xbox360 gamepad driver for Linux that works in userspace.
It is an alternative to the xpad kernel driver and has support for 
Xbox1 gamepads, Xbox360 USB gamepads and Xbox360 wireless gamepads, 
both first and third party.
Fedora Account System Username: maci

Comment 1 Douglas Schilling Landgraf 2013-06-01 23:19:22 UTC
Hi Marcel,

Can you please remove redundant BuildRequires packages?

- All build dependencies are listed in BuildRequires, except for any that are
  listed in the exceptions section of Packaging Guidelines.
  Note: These BR are not needed: gcc-c++
  See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2


Also, if possible fix these warnings:

1) xboxdrv.x86_64: W: invalid-license GPL
http://fedoraproject.org/wiki/Common_Rpmlint_issues#invalid-license
https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#GPL_and_LGPL

2) xboxdrv.x86_64: W: spurious-executable-perm /usr/share/man/man1/xboxdrv.1.gz
Permission issue.


Thanks
Douglas

Comment 2 Marcel Wysocki 2013-06-04 12:07:55 UTC
* Tue Jun 04 2013 Marcel Wysocki <maci> - 0.8.5-2
- spec cleanups
- fix man page permission

Spec URL: http://maci.satgnu.net/rpmbuild/SPECS/xboxdrv.spec
SRPM URL: http://maci.satgnu.net/rpmbuild/SRPMS/xboxdrv-0.8.5-2.fc19.src.rpm
KOJI URL: http://koji.fedoraproject.org/koji/taskinfo?taskID=5464580

Comment 3 Douglas Schilling Landgraf 2013-06-05 12:56:12 UTC
Hi package reviewed manually + fedora-review tool 0.4.1 b2e211f

[OK] MUST: rpmlint must be run on the source rpm and all binary rpms the build produces. The output should be posted in the review

Rpmlint
-------
Checking: xboxdrv-0.8.5-2.fc18.x86_64.rpm
xboxdrv.x86_64: W: spelling-error Summary(en_US) Userspace -> User space, User-space, Users pace
xboxdrv.x86_64: W: spelling-error %description -l en_US gamepad -> game pad, game-pad, gamed
xboxdrv.x86_64: W: spelling-error %description -l en_US userspace -> user space, user-space, users pace
xboxdrv.x86_64: W: spelling-error %description -l en_US xpad -> pad, x pad
xboxdrv.x86_64: W: spelling-error %description -l en_US gamepads -> game pads, game-pads, gamekeepers
xboxdrv.x86_64: W: only-non-binary-in-usr-lib
xboxdrv.x86_64: W: doc-file-dependency /usr/share/doc/xboxdrv-0.8.5/examples/responsecurve-generator.py /usr/bin/env
1 packages and 0 specfiles checked; 0 errors, 7 warnings.

Rpmlint (installed packages)
----------------------------
# rpmlint xboxdrv
xboxdrv.x86_64: W: spelling-error Summary(en_US) Userspace -> User space, User-space, Users pace
xboxdrv.x86_64: W: spelling-error %description -l en_US gamepad -> game pad, game-pad, gamed
xboxdrv.x86_64: W: spelling-error %description -l en_US userspace -> user space, user-space, users pace
xboxdrv.x86_64: W: spelling-error %description -l en_US xpad -> pad, x pad
xboxdrv.x86_64: W: spelling-error %description -l en_US gamepads -> game pads, game-pads, gamekeepers
xboxdrv.x86_64: W: only-non-binary-in-usr-lib

It's the service file.

xboxdrv.x86_64: W: doc-file-dependency /usr/share/doc/xboxdrv-0.8.5/examples/responsecurve-generator.py /usr/bin/env
1 packages and 0 specfiles checked; 0 errors, 7 warnings.

All above warnings can be ignored.

[OK] MUST: The package must be named according to the Package Naming Guidelines

[OK] MUST: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption

[OK] MUST: The package must meet the Packaging Guidelines .

[OK] MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines 

[OK] MUST: The License field in the package spec file must match the actual license.

[OK] MUST: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package must be included in %doc

[OK] MUST: The spec file must be written in American English.

[OK] MUST: The spec file for the package MUST be legible.

[OK] MUST: The sources used to build the package must match the upstream source, as provided in the spec URL. Reviewers should use sha256sum for this task as it is used by the sources file once imported into git. If no upstream URL can be specified for this package, please see the Source URL Guidelines for how to deal with this.

 CHECKSUM(SHA256) this package     : 411195c4f5310a1a5f21f015daaf00b277f75da89df710308f8abfcf8f337e78
  CHECKSUM(SHA256) upstream package : 411195c4f5310a1a5f21f015daaf00b277f75da89df710308f8abfcf8f337e78


[OK] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.

[OK] MUST: All build dependencies must be listed in BuildRequires, except for any that are listed in the exceptions section of the Packaging Guidelines ; inclusion of those as BuildRequires is optional. Apply common sense

[OK] 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: Packages must NOT bundle copies of system libraries

[OK] MUST: A Fedora package must not list a file more than once in the spec file's %files listings. (Notable exception: license texts in specific situations)

[OK] MUST: Permissions on files must be set properly. Executables should be set with executable permissions, for example. 

[OK] MUST: Each package must consistently use macros. 

[OK] MUST: The package must contain code, or permissable content.

[OK] MUST: If a package includes something as %doc, it must not affect the runtime of the application. To summarize: If it is in %doc, the program must run properly if it is not present. 

[OK] MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built

[OK] MUST: All filenames in rpm packages must be valid UTF-8. 

[OK] SHOULD: Package functions as described.

[OK] SHOULD: Latest version is packaged.

[OK] SHOULD: Packager, Vendor, PreReq, Copyright tags should not be in spec file

[OK] SHOULD: Sources can be downloaded from URI in Source: tag

[OK] SHOULD: Reviewer should test that the package builds in mock.

[OK] SHOULD: Buildroot is not present

[OK] SHOULD: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)

[OK] SHOULD: Dist tag is present.

[OK] SHOULD: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.

[OK] SHOULD: Uses parallel make.

[OK] SHOULD: SourceX tarball generation or download is documented.

[OK] SHOULD: SourceX is a working URL.

[OK] SHOULD: Spec use %global instead of %define.


Suggestion
================
The official license is GPLv3 as COPYING file shares. However, looks like these two sources below are not updated (license + FSF address). Can you please talk with upstream? If required, please update again the spec.

GPL (v2 or later) (with incorrect FSF address)
----------------------------------------------
/var/lib/mock/fedora-18-x86_64/root/builddir/build/BUILD/xboxdrv-linux-0.8.5/tools/evtest.c
/var/lib/mock/fedora-18-x86_64/root/builddir/build/BUILD/xboxdrv-linux-0.8.5/tools/jstest.c

The above suggested can be  worked in parallel of packaging.

Final status: APPROVED.

Comment 4 Marcel Wysocki 2013-06-06 06:27:25 UTC
New Package SCM Request
=======================
Package Name: xboxdrv
Short Description: Userspace Xbox/Xbox360 Gamepad Driver for Linux
Owners: maci
Branches: el6 f17 f18 f19
InitialCC:

Comment 5 Gwyn Ciesla 2013-06-06 11:48:31 UTC
Git done (by process-git-requests).

Comment 6 Fedora Update System 2013-06-06 12:26:28 UTC
xboxdrv-0.8.5-2.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/xboxdrv-0.8.5-2.fc19

Comment 7 Fedora Update System 2013-06-06 12:27:13 UTC
xboxdrv-0.8.5-2.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/xboxdrv-0.8.5-2.fc18

Comment 8 Fedora Update System 2013-06-06 17:30:15 UTC
xboxdrv-0.8.5-2.fc19 has been pushed to the Fedora 19 testing repository.

Comment 9 Fedora Update System 2013-07-01 01:40:41 UTC
xboxdrv-0.8.5-2.fc18 has been pushed to the Fedora 18 stable repository.

Comment 10 Fedora Update System 2013-07-01 01:43:39 UTC
xboxdrv-0.8.5-2.fc19 has been pushed to the Fedora 19 stable repository.

Comment 11 Marcel Wysocki 2015-06-29 12:49:27 UTC
Package Change Request
======================
Package Name: xboxdrv
New Branches: epel7
Owners: maci

Comment 12 Gwyn Ciesla 2015-06-29 15:57:53 UTC
Git done (by process-git-requests).