Bug 1645852

Summary: Review Request: colobot - A game for teaching programming
Product: [Fedora] Fedora Reporter: Artur Iwicki <fedora>
Component: Package ReviewAssignee: Robert-André Mauchin <zebob.m>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: mhroncok, msuchy, package-review, zebob.m
Target Milestone: ---Flags: zebob.m: fedora-review+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-11-26 03:05:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 1364745    

Description Artur Iwicki 2018-11-04 11:45:53 UTC
spec: https://svgames.pl/fedora/colobot-0.1.11.1-3.spec
srpm: https://svgames.pl/fedora/colobot-0.1.11.1-3.src.rpm
koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=30654693

Description: Colobot is a game where the player is given a variety of tasks and puzzles to solve using machines ("bots"). Each bot can be controlled manually or given a program to follow, allowing the player to learn programming in a fun way.

Fedora Account System Username: suve

Comment 1 Robert-André Mauchin 2018-11-08 14:36:35 UTC
 - %set_build_flags
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=%{_prefix}

Why don't you use the %cmake macro?

 - You forgot to require hicolor-icon-theme

 - You forgot to validate both tge desktop file and the appdata file.

Comment 2 Miroslav Suchý 2018-11-08 18:24:47 UTC
Summary - you should not repeat the name of the package in the summary
https://fedoraproject.org/wiki/Packaging:Guidelines#Summary_and_description

> Source100: https://colobot.info/files/music/Intro1.ogg
What is the license of those files.

> cp %{SOURCE100} data/music/

It is preserved to do `cp -a` to preserve timestamps.

Comment 3 Artur Iwicki 2018-11-09 13:34:13 UTC
Thanks for pointing these out, Robert-André. I've made a new build.
spec: https://svgames.pl/fedora/colobot-0.1.11.1-4.spec
srpm: https://svgames.pl/fedora/colobot-0.1.11.1-4.src.rpm
koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=30754222

Miroslav: the music is subject to GPLv3. The files are downloaded separately because they're not put in the repo.
https://raw.githubusercontent.com/colobot/colobot-data/master/music/README.md

Comment 4 Robert-André Mauchin 2018-11-09 14:23:07 UTC
You did not address the other points by Miroslav Suchý, namely the summary is not a summary: you must describe what it is not repeat the name, and you should preserve timestamps with cp -a

Comment 5 Artur Iwicki 2018-11-10 00:07:56 UTC
I did not notice that the music files kept their server-side timestamp. Fixed now.

spec: https://svgames.pl/fedora/colobot-0.1.11.1-5.spec
srpm: https://svgames.pl/fedora/colobot-0.1.11.1-5.src.rpm
koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=30767165

Comment 6 Robert-André Mauchin 2018-11-10 14:00:33 UTC
 - Remove the trailing tabs line 69 and 70:

colobot.src:69: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 69)

 - Use %find_lang to handle translation

colobot.x86_64: W: file-not-in-%lang /usr/share/locale/cs/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/de/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/fr/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/pl/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/ru/LC_MESSAGES/colobot.mo



Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: Unversioned so-files in private %_libdir subdirectory (see
     attachment). Verify they are not in ld path.
[x]: If your application is a C or C++ application you must list a
     BuildRequires against gcc, gcc-c++ or clang.
[x]: Header files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
[x]: License file installed when any subpackage combination is installed.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: The spec file handles locales properly.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package contains desktop file if it is a GUI application.
[x]: Package installs a %{name}.desktop using desktop-file-install or
     desktop-file-validate if there is such a file.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 0 bytes in 0 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[-]: Avoid bundling fonts in non-fonts packages.
     Note: Package contains font files
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[-]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in colobot-
     data , colobot-music , colobot-debuginfo , colobot-debugsource
[?]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Patches link to upstream bugs/comments/lists or are otherwise
     justified.
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Uses parallel make %{?_smp_mflags} macro.
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on debuginfo package(s).
     Note: No rpmlint messages.
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package
     is arched.
[x]: Spec file according to URL is the same as in SRPM.


Rpmlint
-------
Checking: colobot-0.1.11.1-5.fc30.x86_64.rpm
          colobot-data-0.1.11.1-5.fc30.noarch.rpm
          colobot-music-0.1.11.1-5.fc30.noarch.rpm
          colobot-debuginfo-0.1.11.1-5.fc30.x86_64.rpm
          colobot-debugsource-0.1.11.1-5.fc30.x86_64.rpm
          colobot-0.1.11.1-5.fc30.src.rpm
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/cs/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/de/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/fr/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/pl/LC_MESSAGES/colobot.mo
colobot.x86_64: W: file-not-in-%lang /usr/share/locale/ru/LC_MESSAGES/colobot.mo
colobot-data.noarch: W: no-documentation
colobot-music.noarch: W: no-documentation
colobot.src:69: W: mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 69)
6 packages and 0 specfiles checked; 0 errors, 8 warnings.

Comment 8 Robert-André Mauchin 2018-11-13 14:35:48 UTC
LGTM, package approved.

Comment 9 Gwyn Ciesla 2018-11-14 21:16:55 UTC
(fedscm-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/colobot

Comment 10 Fedora Update System 2018-11-15 17:02:07 UTC
colobot-0.1.11.1-6.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-6b1c1487b1

Comment 11 Fedora Update System 2018-11-15 17:02:29 UTC
colobot-0.1.11.1-6.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-f7087f30a7

Comment 12 Fedora Update System 2018-11-15 17:02:54 UTC
colobot-0.1.11.1-6.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-47c9bcc085

Comment 13 Fedora Update System 2018-11-16 04:34:34 UTC
colobot-0.1.11.1-6.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-47c9bcc085

Comment 14 Fedora Update System 2018-11-16 05:52:04 UTC
colobot-0.1.11.1-6.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-6b1c1487b1

Comment 15 Fedora Update System 2018-11-16 05:59:43 UTC
colobot-0.1.11.1-6.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-f7087f30a7

Comment 16 Miro Hrončok 2018-11-19 11:02:06 UTC
This depends on Python 2 and should not have been approved :(

Comment 17 Miro Hrončok 2018-11-19 11:15:27 UTC
Here's a PR that switches it to Python 3: https://src.fedoraproject.org/rpms/colobot/pull-request/2

Comment 18 Fedora Update System 2018-11-26 03:05:37 UTC
colobot-0.1.11.1-6.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.

Comment 19 Fedora Update System 2018-11-26 03:54:46 UTC
colobot-0.1.11.1-6.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.

Comment 20 Fedora Update System 2018-11-26 04:18:34 UTC
colobot-0.1.11.1-6.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.