Spec URL: https://github.com/FZUG/repo/blob/master/rpms/deepin_project/deepin-tool-kit.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/mosquito/deepin/fedora-25-x86_64/00501601-deepin-tool-kit/deepin-tool-kit-0.2.1-1.git20e3672.fc25.src.rpm Koji: https://koji.fedoraproject.org/koji/taskinfo?taskID=17616662 Description: Base development tool of all C++/Qt Developer work on Deepin Fedora Account System Username: mosquito
+ package name is OK (a bit strange, but that's upstream's choice...) + license is acceptable (GPLv3) + license is specified correctly + BuildRequires/Provides/Requires look correct + devel subpackage is split out correctly + gcc flags look OK - scriptlets are missing: https://fedoraproject.org/wiki/Packaging:Scriptlets#Shared_libraries > Project MESSAGE: This project is using private headers and will therefore be tied to this specific Qt module build version. > Project MESSAGE: Running this project against other versions of the Qt modules may crash at any arbitrary point. > Project MESSAGE: This is not a bug, but a result of using Qt internals. You have been warned! How specific is this requirement on qt version? Should there be a Requires added with a specific version?
It should be rebuilt with every minor Qt version change to avoid potential breakage.
You can add a line: %{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
# rpm -qR deepin-tool-kit libQt5Core.so.5()(64bit) libQt5Core.so.5(Qt_5)(64bit) libQt5Core.so.5(Qt_5.7)(64bit) It already needs Qt 5.7. Of course, rebuild for each minor version, compatibility may be better. I think use ">=" instead of "=" to avoid too much rebuild, because Fedora's Qt update is not frequent. (In reply to Robin Lee from comment #3) > You can add a line: > %{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}
I don't know enough about qt for an informed decision. This is a nicety that we can figure out later. Bowen, can you post an updated spec file with the scriptlets? I'll rebuild the package once more, and if nothing pops up, approve it.
The convention kde-sig recommends if a package uses private headers, is to add at least: BuildRequires: qt5-qtbase-private-devel and then one of: %{?_qt5:Requires: %{_qt5}%{?_isa} >= %{_qt5_version}} %{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}} depending on your best judgement on how important the tight runtime dependency is (depends largely on *how* the private headers and interfaces are being used). If you're not sure, go with the safer '=' variant.
SPEC: https://raw.githubusercontent.com/FZUG/repo/0debd1ed03ecd29c5f01b98d44da1b6916c6555a/rpms/deepin_project/deepin-tool-kit.spec It's build pass and added the `%{?_qt5:Requires: %{_qt5}%{?_isa} = %{_qt5_version}}` macro. @Zbigniew Jędrzejewski-Szmek
Looks all good now. Package is APPROVED.
Package request has been approved: https://admin.fedoraproject.org/pkgdb/package/rpms/deepin-tool-kit