Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/shutter.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/shutter-0.97-0.1.git01d8563.fc34.src.rpm Description: Shutter is a GTK+ 3.x based screenshot application written in Perl. Shutter covers all features of common command line tools like scrot or import and adds reasonable new features combined with a comfortable GUI using the GTK+ 3.x framework. Fedora Account System Username: martinkg %changelog * Tue Jun 22 2021 Martin Gansser <martinkg> - 0.97-0.1.git01d8563 - Update to 0.97-0.1.git01d8563 - Add RR perl(Gtk3::ImageView) - Add RR perl(Goo::Canvas) - Add RR perl(GooCanvas2::CairoTypes) - Add RR perl-Pango - Add RR libwnck3 rawhide koji build: https://koji.fedoraproject.org/koji/taskinfo?taskID=71879340
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/shutter.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/home/martin/rpmbuild/SRPMS/shutter-0.98-1.fc34.src.rpm %changelog * Wed Aug 04 2021 Martin Gansser <martinkg> - 0.98-1 - Update to 0.98-1
Those are my findings for 0.97-0.1.git01d8563.fc34. I guess thew will also apply for 0.98: URL and Source0 addresses are usable. Ok. TODO: Update URL to <https://shutter-project.org/>. This is where a redirection ends. Source0 archive is original (SHA512: 546df7dec648300d19f56684c6a0fbd377fec56d457d97dcb0527a779e19a6d49e14a7771bacb773cbfdc1b4a067b67825f790defd367e27d945692869c2a2ae). Ok. Summary is Ok. Description is Ok. TODO: I recommend you to use a description from bin/shutter POD or About section at the home page. License verified from README, share/appdata/shutter.appdata.xml, share/shutter/resources/icons/draw.svg, share/shutter/resources/system/upload_plugins/upload/vgyme.pm etc. FIX: Declare all these licenses: FIX: share/shutter/resources/icons/draw.svg packaged is CC-BY-SA FIX: share/shutter/resources/system/plugins/perl/spwatermark/spwatermark.svg is Public Domain FIX: share/shutter/resources/po/shutter/zh_TW.po is MIT (same as gscrot <https://github.com/gscrot/gscrot/blob/master/LICENSE.md>) FIX: share/shutter/resources/icons/drawing_tool/objects/tux.svg is GPLv2 FIX: share/appdata/shutter.appdata.xml is CC0 FIX: The software bundles Tango icons (tango-icon-theme package). You should unbundle them, or declare "Provides: bundled(tango-icon-theme)". See <https://docs.fedoraproject.org/en-US/packaging-guidelines/#bundling>. All the icons consume 7 MB. That's pretty wasteful. FIX: Do not use %filter_provides_in. Use %__provides_exclude_from (https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/). FIX: Build-require libappstream-glib (shutter.spec:101). FIX: Build-require coreutils s(shutter.spec:61). FIX: Build-require sed (shutter.spec:64). $ rpmlint shutter.spec ../SRPMS/shutter-0.97-0.1.git01d8563.fc35.src.rpm ../RPMS/noarch/shutter-0.97-0.1.git01d8563.fc35.noarch.rpm ========================================================== rpmlint session starts ========================================================= rpmlint: 2.0.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 3 shutter.noarch: E: wrong-icon-size /usr/share/icons/hicolor/24x24/apps/shutter-panel.png expected: 24x24 actual: 32x32 shutter.noarch: E: wrong-icon-size /usr/share/icons/hicolor/24x24/apps/shutter.png expected: 24x24 actual: 32x32 shutter.noarch: W: no-manual-page-for-binary shutter shutter.noarch: E: invalid-lc-messages-dir /usr/share/locale/ber/LC_MESSAGES/shutter.mo shutter.noarch: E: files-duplicated-waste 416318 shutter.noarch: W: files-duplicate /usr/share/icons/HighContrast/scalable/apps/shutter.svg /usr/share/icons/HighContrast/scalable/apps/shutter-panel.svg shutter.noarch: W: files-duplicate /usr/share/icons/hicolor/16x16/apps/shutter.png /usr/share/icons/hicolor/16x16/apps/shutter-panel.png shutter.noarch: W: files-duplicate /usr/share/icons/hicolor/22x22/apps/shutter.png /usr/share/icons/hicolor/22x22/apps/shutter-panel.png shutter.noarch: W: files-duplicate /usr/share/icons/hicolor/24x24/apps/shutter.png /usr/share/icons/hicolor/24x24/apps/shutter-panel.png shutter.noarch: W: files-duplicate /usr/share/pixmaps/shutter.png /usr/share/icons/hicolor/48x48/apps/shutter.png shutter.noarch: W: files-duplicate /usr/share/icons/hicolor/scalable/apps/shutter.svg /usr/share/icons/hicolor/scalable/apps/shutter-panel.svg shutter.noarch: W: files-duplicate /usr/share/shutter/resources/icons/drawing_tool/draw-image.svg /usr/share/shutter/resources/icons/Image.svg shutter.noarch: W: files-duplicate /usr/share/shutter/resources/icons/drawing_tool/objects/Cursors/Normal.cur /usr/share/shutter/resources/icons/Normal.cur shutter.noarch: W: files-duplicate /usr/share/shutter/resources/icons/drawing_tool/cursor/text /usr/share/shutter/resources/icons/drawing_tool/cursor/backtext shutter.noarch: W: files-duplicate /usr/share/shutter/resources/icons/sel_window_tooltip.svg /usr/share/shutter/resources/icons/drawing_tool/objects/Tango icon library/Apps/internet-group-chat.svg shutter.noarch: W: files-duplicate /usr/share/shutter/resources/icons/drawing_tool/objects/Tango icon library/Status/folder-visiting.icon /usr/share/shutter/resources/icons/drawing_tool/objects/Tango icon library/Status/folder-drag-accept.icon shutter.noarch: E: explicit-lib-dependency libwnck3 ========================== 2 packages and 1 specfiles checked; 5 errors, 12 warnings, 5 badness; has taken 0.9 s ========================== rpmlint is not Ok. FIX: Move the two icons into the correct directory. FIX: Symlink the duplicated files. File layout and permissions are Ok. I will examine the new version and RPM run-time dependencies later.
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/shutter.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/shutter-0.98-2.fc34.src.rpm %changelog * Thu Aug 05 2021 Martin Gansser <martinkg> - 0.98-2 - Update URL - Use a description from About - Declare license files - Add Provides bundled(tango-icon-theme) - Do not use %%filter_provides_in use %%__provides_exclude_from - Add BR libappstream-glib - Add BR coreutils - Add BR sed - Move icons into the correct directory - Symlink duplicated files > FIX: Do not use %filter_provides_in. Use %__provides_exclude_from (https://docs.fedoraproject.org/en-US/packaging-guidelines/AutoProvidesAndRequiresFiltering/). don't know how to use the correct command. error: line 56: Unknown tag: %__provides_exclude_from /usr/share/shutter/resources/system/upload_plugins
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/shutter.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/shutter-0.98-3.fc34.src.rpm %changelog * Sun Aug 08 2021 Martin Gansser <martinkg> - 0.98-3 - Unbundle tango-icon-theme - Add RR tango-icon-theme rpmlint -v shutter.spec /home/martin/rpmbuild/SRPMS/shutter-0.98-3.fc34.src.rpm /home/martin/rpmbuild/RPMS/noarch/shutter-0.98-3.fc34.noarch.rpm shutter.spec: I: checking shutter.spec: I: checking-url https://github.com/shutter-project/shutter/archive/v0.98.tar.gz#/shutter-0.98.tar.gz (timeout 10 seconds) shutter.src: I: checking shutter.src: I: checking-url https://shutter-project.org/ (timeout 10 seconds) shutter.src: I: checking-url https://github.com/shutter-project/shutter/archive/v0.98.tar.gz#/shutter-0.98.tar.gz (timeout 10 seconds) shutter.noarch: I: checking shutter.noarch: I: checking-url https://shutter-project.org/ (timeout 10 seconds) shutter.noarch: W: cross-directory-hard-link /usr/share/pixmaps/shutter.png /usr/share/icons/hicolor/48x48/apps/shutter.png shutter.noarch: W: cross-directory-hard-link /usr/share/shutter/resources/icons/drawing_tool/draw-image.svg /usr/share/shutter/resources/icons/Image.svg shutter.noarch: W: cross-directory-hard-link /usr/share/shutter/resources/icons/drawing_tool/objects/Cursors/Normal.cur /usr/share/shutter/resources/icons/Normal.cur shutter.noarch: W: dangling-symlink /usr/share/shutter/resources/icons/drawing_tool/objects/Tango /usr/share/icons/Tango/scalable shutter.noarch: E: invalid-lc-messages-dir /usr/share/locale/ber/LC_MESSAGES/shutter.mo 2 packages and 1 specfiles checked; 1 errors, 4 warnings.
I'm sorry for the delay. I did not have much free time recently. This is a rebase, reviewing from the beginning. URL and Source0 addresses are usable. Ok. Source0 archive (SHA-512) 5a3321db635a81f6f67d5789cf374d846f21003a9bd3fd748bb58481d8a5fde450a1c4b5ad4d3edee49804cee6dd8da6ad7b4422eaef96bb333b8b3059cb3e41) is original. Ok. TODO: Move "%global __provides_exclude_from" just above a description section. This where we usually place the filtering macros. Summary is Ok. Description is Ok. FIX: share/shutter/resources/icons/drawing_tool/cursor files are GPLv2+ according to README. FIX: List the licenses of all the packaged files into the License section ("License: GPLv3+ and GPLv2+ and GPLv2 and CC-BY-SA and MIT and CC0 and Public Domain"). $ rpmlint shutter.spec ../SRPMS/shutter-0.98-3.fc36.src.rpm ../RPMS/noarch/shutter-0.98-3.fc36.noarch.rpm ============================================================= rpmlint session starts ============================================================ rpmlint: 2.1.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 3 shutter.noarch: W: dangling-symlink /usr/share/shutter/resources/icons/drawing_tool/objects/Tango /usr/share/icons/Tango/scalable shutter.noarch: W: cross-directory-hard-link /usr/share/pixmaps/shutter.png /usr/share/icons/hicolor/48x48/apps/shutter.png shutter.noarch: W: cross-directory-hard-link /usr/share/shutter/resources/icons/drawing_tool/draw-image.svg /usr/share/shutter/resources/icons/Image.svg shutter.noarch: W: cross-directory-hard-link /usr/share/shutter/resources/icons/drawing_tool/objects/Cursors/Normal.cur /usr/share/shutter/resources/icons/Normal.cur ============================== 2 packages and 1 specfiles checked; 0 errors, 4 warnings, 0 badness; has taken 0.8 s ============================= TODO: I recommend creating symbolic links (ln -s) instead of hard links in the %install section. If a user had the files on different file systems, they would become duplicated. File permissions and layout are Ok. $ rpm -q --requires -p ../RPMS/noarch/shutter-0.98-3.fc36.noarch.rpm | sort -f | uniq -c 1 /usr/bin/bash 1 /usr/bin/perl 1 hicolor-icon-theme 1 ImageMagick 1 perl(:MODULE_COMPAT_5.34.0) 1 perl(:VERSION) >= 5.10.1 1 perl(base) 1 perl(Carp::Always) 1 perl(constant) 1 perl(Data::Dumper) 1 perl(diagnostics) 1 perl(Digest::MD5) 1 perl(Encode) 1 perl(Encode::Locale) 1 perl(Exporter) 1 perl(File::Basename) 1 perl(File::Copy) 1 perl(File::Copy::Recursive) 1 perl(File::Glob) 1 perl(File::Spec) 1 perl(File::stat) 1 perl(File::Temp) 1 perl(File::Which) 1 perl(FindBin) 1 perl(Getopt::Long) 1 perl(Glib) 1 perl(Glib::Object::Introspection) 1 perl(Glib::Object::Subclass) 1 perl(Goo::Canvas) 1 perl(GooCanvas2) 2 perl(GooCanvas2::CairoTypes) 1 perl(Gtk3) 2 perl(Gtk3::ImageView) >= 9 1 perl(Gtk3::ImageView::Tool::Selector) 1 perl(HTTP::Request::Common) 1 perl(HTTP::Status) 1 perl(Image::ExifTool) 1 perl(Image::Magick) 1 perl(IO::File) 1 perl(JSON::MaybeXS) 1 perl(lib) 1 perl(List::Util) 1 perl(Locale::gettext) 1 perl(LWP::UserAgent) 1 perl(MIME::Base64) 1 perl(Net::DBus) 1 perl(Net::FTP) 1 perl(Number::Bytes::Human) 1 perl(Pango) 1 perl(Path::Class) 1 perl(Pod::Usage) 1 perl(POSIX) 1 perl(Proc::Killfam) 1 perl(Proc::Simple) 1 perl(Readonly) 1 perl(Shutter::App::AboutDialog) 1 perl(Shutter::App::Autostart) 1 perl(Shutter::App::Common) 1 perl(Shutter::App::Directories) 1 perl(Shutter::App::GlobalSettings) 1 perl(Shutter::App::HelperFunctions) 1 perl(Shutter::App::Menu) 1 perl(Shutter::App::Notification) 1 perl(Shutter::App::Optional::Exif) 1 perl(Shutter::App::Options) 1 perl(Shutter::App::ShutterNotification) 1 perl(Shutter::App::SimpleDialogs) 1 perl(Shutter::App::Toolbar) 1 perl(Shutter::Geometry::Region) 1 perl(Shutter::Pixbuf::Border) 1 perl(Shutter::Pixbuf::Load) 1 perl(Shutter::Pixbuf::Save) 1 perl(Shutter::Screenshot::Error) 1 perl(Shutter::Screenshot::History) 1 perl(Shutter::Screenshot::ImageViewSelector) 1 perl(Shutter::Screenshot::Main) 1 perl(Shutter::Screenshot::SelectorAdvanced) 1 perl(Shutter::Screenshot::SelectorAuto) 1 perl(Shutter::Screenshot::Web) 1 perl(Shutter::Screenshot::Window) 1 perl(Shutter::Screenshot::WindowName) 1 perl(Shutter::Screenshot::WindowXid) 1 perl(Shutter::Screenshot::Workspace) 1 perl(Shutter::Upload::FTP) 1 perl(Shutter::Upload::Shared) 1 perl(Sort::Naturally) 1 perl(strict) 1 perl(Time::HiRes) 1 perl(URI) 1 perl(URI::Escape) 1 perl(URI::Split) 1 perl(utf8) 1 perl(warnings) 1 perl(WebService::Dropbox) 1 perl(WWW::Mechanize) 1 perl(X11::Protocol::Ext::XFIXES) 1 perl(XML::Simple) 1 perl-Pango 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsZstd) <= 5.4.18-1 1 tango-icon-theme TODO: Do not explicitly run-require perl(GooCanvas2::CairoTypes) and perl(Gtk3::ImageView). They are found automatically. FIX: Do not run-require perl-Pango. It is found as perl(Pango) automatically. $ rpm -q --provides -p ../RPMS/noarch/shutter-0.98-3.fc36.noarch.rpm | sort -f | uniq -c 1 application() 1 application(shutter.desktop) 1 metainfo() 1 metainfo(shutter.appdata.xml) 1 mimehandler(image/bmp) 1 mimehandler(image/gif) 1 mimehandler(image/jpeg) 1 mimehandler(image/png) 1 mimehandler(image/svg+xml) 1 mimehandler(image/tiff) 1 mimehandler(image/x-bmp) 1 mimehandler(image/x-ico) 1 mimehandler(image/x-pcx) 1 mimehandler(image/x-png) 1 mimehandler(image/x-tga) 1 mimehandler(image/xpm) 1 perl(Gtk3::IconSize) 1 perl(Shutter::App::AboutDialog) 1 perl(Shutter::App::Autostart) 1 perl(Shutter::App::Common) 1 perl(Shutter::App::Directories) 1 perl(Shutter::App::GlobalSettings) 1 perl(Shutter::App::HelperFunctions) 1 perl(Shutter::App::Menu) 1 perl(Shutter::App::Notification) 1 perl(Shutter::App::Optional::Exif) 1 perl(Shutter::App::Options) 1 perl(Shutter::App::ShutterNotification) 1 perl(Shutter::App::SimpleDialogs) 1 perl(Shutter::App::Toolbar) 1 perl(Shutter::Draw::DrawingTool) 1 perl(Shutter::Geometry::Region) 1 perl(Shutter::Pixbuf::Border) 1 perl(Shutter::Pixbuf::Load) 1 perl(Shutter::Pixbuf::Save) 1 perl(Shutter::Screenshot::Error) 1 perl(Shutter::Screenshot::History) 1 perl(Shutter::Screenshot::ImageViewSelector) 1 perl(Shutter::Screenshot::Main) 1 perl(Shutter::Screenshot::SelectorAdvanced) 1 perl(Shutter::Screenshot::SelectorAuto) 1 perl(Shutter::Screenshot::Web) 1 perl(Shutter::Screenshot::Window) 1 perl(Shutter::Screenshot::WindowName) 1 perl(Shutter::Screenshot::WindowXid) 1 perl(Shutter::Screenshot::Workspace) 1 perl(Shutter::Upload::FTP) 1 perl(Shutter::Upload::Shared) 1 shutter = 0.98-3.fc36 FIX: Do not provide perl(Gtk3::IconSize). It's a private redefinition. $ resolvedeps rawhide ../RPMS/noarch/shutter-0.98-3.fc36.noarch.rpm Binary dependencies are resolvable. Ok. The package builds in Fedora 36 (https://koji.fedoraproject.org/koji/taskinfo?taskID=74083215). Ok. Otherwise the package is in line with Fedora and Perl packaging guidelines. Please correct the FIX items, consider fixing TODO items, and provide an updated spec file. Resolution: NOT approved.
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/shutter.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/shutter-0.98-4.fc35.src.rpm %changelog * Thu Aug 19 2021 Martin Gansser <martinkg> - 0.98-4 - Move %%global __provides_exclude_from above the description section - Add share/shutter/resources/icons/drawing_tool/cursor files are GPLv2+ - List the licenses of all the packaged files into the License section - Creating symbolic links (ln -s) instead of hard links in the %%install section - Do not explicitly run-require perl(GooCanvas2::CairoTypes) and perl(Gtk3::ImageView) they are found automatically. - Do not run-require perl-Pango. It is found as perl(Pango) automatically do not know how to fix this: FIX: Do not provide perl(Gtk3::IconSize). It's a private redefinition.
TODO: Use plain "perl" instead of %{__perl} macro. First there is only one perl executable in Fedora so no need for a macro, second the macro is undefined in SRPM build root and emits warnings there, third underscored macros is internal to rpmbuild and should be avoided if possible. $ rpmlint shutter.spec ../SRPMS/shutter-0.98-4.fc36.src.rpm ../RPMS/noarch/shutter-0.98-4.fc36.noarch.rpm ========================================================== rpmlint session starts ========================================================= rpmlint: 2.1.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 3 shutter.noarch: W: dangling-symlink /usr/share/shutter/resources/icons/drawing_tool/objects/Tango /usr/share/icons/Tango/scalable =========================== 2 packages and 1 specfiles checked; 0 errors, 1 warnings, 0 badness; has taken 0.9 s ========================== rpmlint is Ok. $ rpm -q --requires -p ../RPMS/noarch/shutter-0.98-4.fc36.noarch.rpm | sort -f | uniq -c 1 /usr/bin/bash 1 /usr/bin/perl 1 hicolor-icon-theme 1 ImageMagick 1 perl(:MODULE_COMPAT_5.34.0) 1 perl(:VERSION) >= 5.10.1 1 perl(base) 1 perl(Carp::Always) 1 perl(constant) 1 perl(Data::Dumper) 1 perl(diagnostics) 1 perl(Digest::MD5) 1 perl(Encode) 1 perl(Encode::Locale) 1 perl(Exporter) 1 perl(File::Basename) 1 perl(File::Copy) 1 perl(File::Copy::Recursive) 1 perl(File::Glob) 1 perl(File::Spec) 1 perl(File::stat) 1 perl(File::Temp) 1 perl(File::Which) 1 perl(FindBin) 1 perl(Getopt::Long) 1 perl(Glib) 1 perl(Glib::Object::Introspection) 1 perl(Glib::Object::Subclass) 1 perl(Goo::Canvas) 1 perl(GooCanvas2) 1 perl(GooCanvas2::CairoTypes) 1 perl(Gtk3) 1 perl(Gtk3::ImageView) >= 9 1 perl(Gtk3::ImageView::Tool::Selector) 1 perl(HTTP::Request::Common) 1 perl(HTTP::Status) 1 perl(Image::ExifTool) 1 perl(Image::Magick) 1 perl(IO::File) 1 perl(JSON::MaybeXS) 1 perl(lib) 1 perl(List::Util) 1 perl(Locale::gettext) 1 perl(LWP::UserAgent) 1 perl(MIME::Base64) 1 perl(Net::DBus) 1 perl(Net::FTP) 1 perl(Number::Bytes::Human) 1 perl(Pango) 1 perl(Path::Class) 1 perl(Pod::Usage) 1 perl(POSIX) 1 perl(Proc::Killfam) 1 perl(Proc::Simple) 1 perl(Readonly) 1 perl(Shutter::App::AboutDialog) 1 perl(Shutter::App::Autostart) 1 perl(Shutter::App::Common) 1 perl(Shutter::App::Directories) 1 perl(Shutter::App::GlobalSettings) 1 perl(Shutter::App::HelperFunctions) 1 perl(Shutter::App::Menu) 1 perl(Shutter::App::Notification) 1 perl(Shutter::App::Optional::Exif) 1 perl(Shutter::App::Options) 1 perl(Shutter::App::ShutterNotification) 1 perl(Shutter::App::SimpleDialogs) 1 perl(Shutter::App::Toolbar) 1 perl(Shutter::Geometry::Region) 1 perl(Shutter::Pixbuf::Border) 1 perl(Shutter::Pixbuf::Load) 1 perl(Shutter::Pixbuf::Save) 1 perl(Shutter::Screenshot::Error) 1 perl(Shutter::Screenshot::History) 1 perl(Shutter::Screenshot::ImageViewSelector) 1 perl(Shutter::Screenshot::Main) 1 perl(Shutter::Screenshot::SelectorAdvanced) 1 perl(Shutter::Screenshot::SelectorAuto) 1 perl(Shutter::Screenshot::Web) 1 perl(Shutter::Screenshot::Window) 1 perl(Shutter::Screenshot::WindowName) 1 perl(Shutter::Screenshot::WindowXid) 1 perl(Shutter::Screenshot::Workspace) 1 perl(Shutter::Upload::FTP) 1 perl(Shutter::Upload::Shared) 1 perl(Sort::Naturally) 1 perl(strict) 1 perl(Time::HiRes) 1 perl(URI) 1 perl(URI::Escape) 1 perl(URI::Split) 1 perl(utf8) 1 perl(warnings) 1 perl(WebService::Dropbox) 1 perl(WWW::Mechanize) 1 perl(X11::Protocol::Ext::XFIXES) 1 perl(XML::Simple) 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsZstd) <= 5.4.18-1 1 tango-icon-theme Binary requires are Ok. > do not know how to fix this: FIX: Do not provide perl(Gtk3::IconSize). It's a private redefinition. Add this line under a %global __provides_exclude_from line: %global __provides_exclude %{?__provides_exclude:%{__provides_exclude}|}^perl\\(Gtk3::IconSize\\) That appends a regular expression to __provides_exclude macro. This macro is then used by rpmbuild to remove the matching Provides. $ resolvedeps rawhide ../RPMS/noarch/shutter-0.98-4.fc36.noarch.rpm Binary dependencies are resolvable. Ok. The package builds in F36 (https://koji.fedoraproject.org/koji/taskinfo?taskID=74128360). Ok. This package is almost perfect. Please filter perl(Gtk3::IconSize), replace the %{__perl} macro, and prove an updated spec file.
Spec URL: https://martinkg.fedorapeople.org/Review/SPECS/shutter.spec SRPM URL: https://martinkg.fedorapeople.org/Review/SRPMS/shutter-0.98-5.fc35.src.rpm %changelog * Thu Aug 19 2021 Martin Gansser <martinkg> - 0.98-5 - Use plain "perl" instead of %%{__perl} macro - Do not provide perl(Gtk3::IconSize)
$ rpmlint shutter.spec ../SRPMS/shutter-0.98-5.fc36.src.rpm ../RPMS/noarch/shutter-0.98-5.fc36.noarch.rpm ========================================================== rpmlint session starts ========================================================= rpmlint: 2.1.0 configuration: /usr/lib/python3.10/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/licenses.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 3 shutter.noarch: W: dangling-symlink /usr/share/shutter/resources/icons/drawing_tool/objects/Tango /usr/share/icons/Tango/scalable =========================== 2 packages and 1 specfiles checked; 0 errors, 1 warnings, 0 badness; has taken 0.8 s ========================== rpmlint is Ok. $ rpm -q --provides -p ../RPMS/noarch/shutter-0.98-5.fc36.noarch.rpm | sort -f | uniq -c 1 application() 1 application(shutter.desktop) 1 metainfo() 1 metainfo(shutter.appdata.xml) 1 mimehandler(image/bmp) 1 mimehandler(image/gif) 1 mimehandler(image/jpeg) 1 mimehandler(image/png) 1 mimehandler(image/svg+xml) 1 mimehandler(image/tiff) 1 mimehandler(image/x-bmp) 1 mimehandler(image/x-ico) 1 mimehandler(image/x-pcx) 1 mimehandler(image/x-png) 1 mimehandler(image/x-tga) 1 mimehandler(image/xpm) 1 perl(Shutter::App::AboutDialog) 1 perl(Shutter::App::Autostart) 1 perl(Shutter::App::Common) 1 perl(Shutter::App::Directories) 1 perl(Shutter::App::GlobalSettings) 1 perl(Shutter::App::HelperFunctions) 1 perl(Shutter::App::Menu) 1 perl(Shutter::App::Notification) 1 perl(Shutter::App::Optional::Exif) 1 perl(Shutter::App::Options) 1 perl(Shutter::App::ShutterNotification) 1 perl(Shutter::App::SimpleDialogs) 1 perl(Shutter::App::Toolbar) 1 perl(Shutter::Draw::DrawingTool) 1 perl(Shutter::Geometry::Region) 1 perl(Shutter::Pixbuf::Border) 1 perl(Shutter::Pixbuf::Load) 1 perl(Shutter::Pixbuf::Save) 1 perl(Shutter::Screenshot::Error) 1 perl(Shutter::Screenshot::History) 1 perl(Shutter::Screenshot::ImageViewSelector) 1 perl(Shutter::Screenshot::Main) 1 perl(Shutter::Screenshot::SelectorAdvanced) 1 perl(Shutter::Screenshot::SelectorAuto) 1 perl(Shutter::Screenshot::Web) 1 perl(Shutter::Screenshot::Window) 1 perl(Shutter::Screenshot::WindowName) 1 perl(Shutter::Screenshot::WindowXid) 1 perl(Shutter::Screenshot::Workspace) 1 perl(Shutter::Upload::FTP) 1 perl(Shutter::Upload::Shared) 1 shutter = 0.98-5.fc36 Binary provides are Ok. $ resolvedeps rawhide ../RPMS/noarch/shutter-0.98-5.fc36.noarch.rpm Binary dependencies are resolvable. Ok. The package builds in F36 (https://koji.fedoraproject.org/koji/taskinfo?taskID=74141918). Ok. The package is in line with Fedora and Perl packaging guidelines. Resolution: Package APPROVED.
Many thanks for the professional review support.