https://bugzilla.redhat.com/show_bug.cgi?id=1853888 Lyes Saadi <fedora@xxxxxxx> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fedora@xxxxxxx Blocks| |177841 (FE-NEEDSPONSOR) Doc Type|--- |If docs needed, set a value --- Comment #1 from Lyes Saadi <fedora@xxxxxxx> --- Hello :)! You seem to be new here! You should consider reading thoroughly this page: https://fedoraproject.org/wiki/Join_the_package_collection_maintainers I am not a sponsor, so I won't do a proper review of your package. But, I've got some advices :P. --- 1. Store your project online, on a permanent place, preferably on a forge. Mainly because the Source tag have to be a URL (except if you have to clean the package before of some prohibited content or you use revision control, but you at least need to provide the URL from where you got the code in a comment), see https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/. A forge is an ideal choice for that, I would recommend GitHub, GitLab, Pagure, SourceHut, Bitbucket... etc. Also, fix your url. For me at least, `codecolla.com:10734` is unreachable. --- 2. Please fix your indentation and separate different sections. Your indentation is huge and inconsistent. Maybe you use 2-tab indentation? Use spaces instead, it will render more nicely and will be more readable. Also, we tend to separate these sections with 1 or more blank lines: Package Information (Name-Version-Release-Summary), Upstream Information (License-URL-Source[-Architecture]), BuildRequires, Requires, Description, Prep, Build, Install, Files, Changelog. Example: ``` Name: LTK Version: 1.5.3 Release: 11%{?dist} Summary: Ladspa v3 ToolKit License: GPLv3 URL: codecolla.com:10734 Source: %{name}-%{version}.tar.gz BuildRequires: gcc BuildRequires: glibc-devel BuildRequires: make BuildRequires: libunwind-devel Requires: libunwind %description Ladspa V3 ToolKit is a general purpose toolkit enabling object oriented programming in c. %prep %setup -q -c %build make NAME=%{name} VERSION=%{version} %install [...] ``` See how much nicer and cleaner it looks ;)? --- 3. Use `%make_build NAME=%{name} VERSION=%{version}`. This will allow for parallel build and is recommended for more consistency between packages ;). Even better, you could just add NAME := libLTK and VERSION := 1.5.3 to the Makefile, so you'd only have to call `%make_build`. --- 4. Add the installation process to the Makefile. In an `install` target, and replace all that with `%make_install`. This will make it way more readable and easier to maintain. --- 5. Add the compiler flags! By adding `%set_build_flags` in a separate line before `%make_build` or, by adding `%{optflags}` after `%make_build` like that: `%make_build %{optflags}`. See https://docs.fedoraproject.org/en-US/packaging-guidelines/#_compiler_flags. --- 6. Add a license to the package by including it in the tarball. And add in the `%files` section `%license LICENSE`. GPLv3 requires that the license be distributed with the program. --- 7. Remove the photos from the tarball. You don't install them, and they add an unnecessary weight. And if they are not Licensed in GPLv3, it could be a Licensing violation. --- 8. Remove the `%postun`. ``` %postun rm -f %{_libdir}/lib%{name}.so rm -f %{_includedir}/%{name} ``` It is done automatically. --- 9. Add a devel subpackage for the includes and unversioned.so. If you don't know how to do this, look at packages like libhandy for example: https://src.fedoraproject.org/rpms/libhandy/blob/master/f/libhandy.spec But generally, just add this after the `%description` section: ``` %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. ``` And this after the `%files` section: ``` %files devel %{_libdir}/lib%{name}.so %{_includedir}/%{name}.%{version} %{_includedir}/%{name} %{_includedir}/%{name}.%{version}/instance.h %{_includedir}/%{name}.%{version}/utils.h ``` And remove those lines from the other files section. ---- 10. Version your changelogs. You don't need to do that for older changelogs, but, at least, the last one: ``` * Sat Jul 04 2020 Lewis ANESA <lan@xxxxxxxxxxxxx> - 1.5.3-11 - Merge branch 'logs' ``` ---- 11. Rename the spec or the package. The package and the spec should have the exact same name. I would recommend renaming the package `libLTK` -> `ltk`, unless you really want your package to be uppercase (RPM is case-sensitive, it will be harder to install), also the lib suffix isn't necessary in Fedora. I hope I've covered them all :P. Referenced Bugs: https://bugzilla.redhat.com/show_bug.cgi?id=177841 [Bug 177841] Tracker: Review requests from new Fedora packagers who need a sponsor -- You are receiving this mail because: You are on the CC list for the bug. You are always notified about changes to this product and component _______________________________________________ package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx