============================ 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: 7 liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/export_chunked_words.py liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/generate_alphabet.py liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/lou_maketable.mk liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/make_suggestions.py liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/submit_rows.py liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/submit_rows.sh liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/submit_rules.py liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/submit_rules.sh liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/substrings.pl liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/utils.py liblouis-tools.aarch64: E: subdir-in-bin /usr/bin/lou_maketable.d/wrap_patgen.sh The package contains a subdirectory in /usr/bin. It's not permitted to create a subdir there. Create it in /usr/lib/ instead. liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/export_chunked_words.py liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/generate_alphabet.py liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/lou_maketable.mk liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/make_suggestions.py liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/submit_rows.py liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/submit_rows.sh liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/submit_rules.py liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/submit_rules.sh liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/utils.py liblouis-tools.aarch64: E: script-without-shebang /usr/bin/lou_maketable.d/wrap_patgen.sh This text file has executable bits set or is located in a path dedicated for executables, but lacks a shebang and cannot thus be executed. If the file is meant to be an executable script, add the shebang, otherwise remove the executable bits or move the file elsewhere. liblouis.spec:147: W: python-setup-install %python3_install The python setup.py install subcommand is deprecated and should be replaced with macros %pyproject_wheel, %pyproject_install or with "pip" liblouis20.aarch64: W: package-with-huge-docs 50% More than half the size of your package is documentation. Consider splitting it into a -doc subpackage. liblouis-doc.aarch64: E: no-binary python3-louis.aarch64: E: no-binary The package should be of the noarch architecture because it doesn't contain any binaries. python3-louis.aarch64: W: files-duplicate /usr/lib/python3.13/site-packages/louis/__pycache__/__init__.cpython-313.pyc /usr/lib/python3.13/site-packages/louis/__pycache__/__init__.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. liblouis-tools.aarch64: E: env-script-interpreter (Badness: 9) /usr/bin/lou_maketable /usr/bin/env bash This script uses 'env' as an interpreter. For the rpm runtime dependency detection to work, the shebang #!/usr/bin/env needs to be patched into #!/usr/bin/ otherwise the package dependency generator merely adds a dependency on /usr/bin/env rather than the actual interpreter /usr/bin/. Alternatively, if the file should not be executed, then ensure that it is not marked as executable or don't install it in a path that is reserved for executables. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 1.3 70.9 BinariesCheck 0.2 8.1 SignatureCheck 0.1 7.4 TOTAL 1.9 100.0 7 packages and 0 specfiles checked; 24 errors, 3 warnings, 45 filtered, 32 badness; has taken 1.9 s