============================ rpmlint session starts ============================ rpmlint: 2.8.0 configuration: /opt/testing/lib64/python3.13/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: 10 openEMS.spec:235: W: shared-dir-glob-in-files %{_bindir}/* The %files section contains "%{_bindir}/*", "%{_datadir}/*", "%{_docdir}/*", "%{_includedir}/*" or "%{_mandir}/*". These can lead to packagers not noticing when upstream adds new and possibly conflicting files in these directories. Therefore, files in these directories should be explicitely listed like "%{_bindir}/foobar" or "%{_includedir}/foobar.h". openEMS-matlab.x86_64: E: no-binary The package should be of the noarch architecture because it doesn't contain any binaries. openEMS.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. python311-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.11/site-packages/openEMS/__pycache__/__init__.cpython-311.pyc /usr/lib64/python3.11/site-packages/openEMS/__pycache__/__init__.cpython-311.opt-1.pyc python311-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.11/site-packages/openEMS/__pycache__/automesh.cpython-311.pyc /usr/lib64/python3.11/site-packages/openEMS/__pycache__/automesh.cpython-311.opt-1.pyc python311-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.11/site-packages/openEMS/__pycache__/physical_constants.cpython-311.pyc /usr/lib64/python3.11/site-packages/openEMS/__pycache__/physical_constants.cpython-311.opt-1.pyc python311-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.11/site-packages/openEMS/__pycache__/ports.cpython-311.pyc /usr/lib64/python3.11/site-packages/openEMS/__pycache__/ports.cpython-311.opt-1.pyc python312-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.12/site-packages/openEMS/__pycache__/__init__.cpython-312.pyc /usr/lib64/python3.12/site-packages/openEMS/__pycache__/__init__.cpython-312.opt-1.pyc python312-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.12/site-packages/openEMS/__pycache__/automesh.cpython-312.pyc /usr/lib64/python3.12/site-packages/openEMS/__pycache__/automesh.cpython-312.opt-1.pyc python312-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.12/site-packages/openEMS/__pycache__/physical_constants.cpython-312.pyc /usr/lib64/python3.12/site-packages/openEMS/__pycache__/physical_constants.cpython-312.opt-1.pyc python312-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.12/site-packages/openEMS/__pycache__/ports.cpython-312.pyc /usr/lib64/python3.12/site-packages/openEMS/__pycache__/ports.cpython-312.opt-1.pyc python313-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.13/site-packages/openEMS/__pycache__/__init__.cpython-313.pyc /usr/lib64/python3.13/site-packages/openEMS/__pycache__/__init__.cpython-313.opt-1.pyc python313-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.13/site-packages/openEMS/__pycache__/automesh.cpython-313.pyc /usr/lib64/python3.13/site-packages/openEMS/__pycache__/automesh.cpython-313.opt-1.pyc python313-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.13/site-packages/openEMS/__pycache__/physical_constants.cpython-313.pyc /usr/lib64/python3.13/site-packages/openEMS/__pycache__/physical_constants.cpython-313.opt-1.pyc python313-openEMS.x86_64: W: files-duplicate /usr/lib64/python3.13/site-packages/openEMS/__pycache__/ports.cpython-313.pyc /usr/lib64/python3.13/site-packages/openEMS/__pycache__/ports.cpython-313.opt-1.pyc Your package contains duplicated files that are not hard- or symlinks. You should use the %fdupes macro to link the files to one. python311-openEMS.x86_64: E: explicit-lib-dependency python311-matplotlib python312-openEMS.x86_64: E: explicit-lib-dependency python312-matplotlib python313-openEMS.x86_64: E: explicit-lib-dependency python313-matplotlib You must let rpm find the library dependencies by itself. Do not put unneeded explicit Requires: tags. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 0.4 38.6 BinariesCheck 0.2 16.2 BashismsCheck 0.1 10.7 TOTAL 1.0 100.0 10 packages and 0 specfiles checked; 4 errors, 14 warnings, 23 filtered, 4 badness; has taken 1.0 s