============================ rpmlint session starts ============================ rpmlint: 2.6.1 configuration: /opt/testing/lib/python3.11/rpmlint/configdefaults.toml /opt/testing/share/rpmlint/cron-whitelist.toml /opt/testing/share/rpmlint/dbus-services.toml /opt/testing/share/rpmlint/device-files-whitelist.toml /opt/testing/share/rpmlint/licenses.toml /opt/testing/share/rpmlint/opensuse.toml /opt/testing/share/rpmlint/pam-modules.toml /opt/testing/share/rpmlint/permissions-whitelist.toml /opt/testing/share/rpmlint/pie-executables.toml /opt/testing/share/rpmlint/polkit-rules-whitelist.toml /opt/testing/share/rpmlint/scoring.toml /opt/testing/share/rpmlint/security.toml /opt/testing/share/rpmlint/sudoers-whitelist.toml /opt/testing/share/rpmlint/sysctl-whitelist.toml /opt/testing/share/rpmlint/systemd-tmpfiles.toml /opt/testing/share/rpmlint/users-groups.toml /opt/testing/share/rpmlint/world-writable-whitelist.toml /opt/testing/share/rpmlint/zypper-plugins.toml /etc/xdg/rpmlint/scoring-strict.override.toml checks: 41, packages: 4 grass-doc.armv7hl: E: zero-length /usr/lib/grass84/docs/html/class_graphical.html grass-doc.armv7hl: E: zero-length /usr/lib/grass84/docs/man/man1/class_graphical.1 grass.armv7hl: W: obsolete-not-provided grass7 If a package is obsoleted by a compatible replacement, the obsoleted package should also be provided in order to not cause unnecessary dependency breakage. If the obsoleting package is not a compatible replacement for the old one, leave out the Provides. grass.armv7hl: E: non-executable-script /usr/lib/grass84/etc/d.mon/render_cmd.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/etc/python/grass/pygrass/gis/__init__.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/animation/g.gui.animation.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/datacatalog/g.gui.datacatalog.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/dbmgr/g.gui.dbmgr.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/gcp/g.gui.gcp.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/gmodeler/g.gui.gmodeler.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/iclass/g.gui.iclass.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/image2target/g.gui.image2target.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/mapdisp/test_mapdisp.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/mapswipe/g.gui.mapswipe.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/modules/mapsets_picker.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/photo2image/g.gui.photo2image.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/psmap/g.gui.psmap.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/rdigit/g.gui.rdigit.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/rlisetup/g.gui.rlisetup.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/timeline/g.gui.timeline.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/tplot/frame.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/tplot/g.gui.tplot.py 644 /usr/bin/python3 grass.armv7hl: E: non-executable-script /usr/lib/grass84/gui/wxpython/vdigit/g.gui.vdigit.py 644 /usr/bin/python3 This text file contains a shebang or is located in a path dedicated for executables, but lacks the executable bits and cannot thus be executed. If the file is meant to be an executable script, add the executable bits, otherwise remove the shebang or move the file elsewhere. grass-devel.armv7hl: W: non-conffile-in-etc /etc/GRASSDIR A non-executable file in your package is being installed in /etc, but is not a configuration file. All non-executable files in /etc should be configuration files. Mark the file as %config in the spec file. grass-devel.armv7hl: E: no-binary grass-doc.armv7hl: E: no-binary The package should be of the noarch architecture because it doesn't contain any binaries. grass.spec: W: no-%check-section The spec file does not contain an %check section. Please check if the package has a testsuite and what it takes to enable the testsuite as part of the package build. If it is not possible to run it in the build environment (OBS/koji) or no testsuite exists, then please ignore this warning. You should not insert an empty %check section. grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.animation /usr/lib/grass84/gui/wxpython/animation/g.gui.animation.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.datacatalog /usr/lib/grass84/gui/wxpython/datacatalog/g.gui.datacatalog.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.dbmgr /usr/lib/grass84/gui/wxpython/dbmgr/g.gui.dbmgr.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.gcp /usr/lib/grass84/gui/wxpython/gcp/g.gui.gcp.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.gmodeler /usr/lib/grass84/gui/wxpython/gmodeler/g.gui.gmodeler.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.iclass /usr/lib/grass84/gui/wxpython/iclass/g.gui.iclass.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.image2target /usr/lib/grass84/gui/wxpython/image2target/g.gui.image2target.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.mapswipe /usr/lib/grass84/gui/wxpython/mapswipe/g.gui.mapswipe.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.photo2image /usr/lib/grass84/gui/wxpython/photo2image/g.gui.photo2image.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.psmap /usr/lib/grass84/gui/wxpython/psmap/g.gui.psmap.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.rdigit /usr/lib/grass84/gui/wxpython/rdigit/g.gui.rdigit.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.rlisetup /usr/lib/grass84/gui/wxpython/rlisetup/g.gui.rlisetup.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.timeline /usr/lib/grass84/gui/wxpython/timeline/g.gui.timeline.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.tplot /usr/lib/grass84/gui/wxpython/tplot/g.gui.tplot.py grass.armv7hl: W: files-duplicate /usr/lib/grass84/scripts/g.gui.vdigit /usr/lib/grass84/gui/wxpython/vdigit/g.gui.vdigit.py Your package contains duplicated files that are not hard- or symlinks. You should use the %fdupes macro to link the files to one. grass.armv7hl: E: call-to-mktemp /usr/lib/grass84/lib/libgrass_gis.8.4.so This executable calls mktemp. As advised by the manpage (mktemp(3)), this function should be avoided. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 8.3 46.3 BinariesCheck 7.4 41.3 FilesCheck 0.6 3.4 SignatureCheck 0.5 2.5 BuildRootAndDateCheck 0.3 1.9 SUIDPermissionsCheck 0.3 1.6 TOTAL 17.8 100.0 4 packages and 0 specfiles checked; 25 errors, 18 warnings, 194 filtered, 25 badness; has taken 18.0 s