============================ 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: 2 ghc-bootstrap.x86_64: E: zero-length /opt/lib/ghc-9.10.1/lib/package.conf.d/package.cache.lock ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/ghc is a link to a script (/opt/bin/ghc-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/ghc-pkg is a link to a script (/opt/bin/ghc-pkg-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/ghci is a link to a script (/opt/bin/ghci-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/haddock is a link to a script (/opt/bin/haddock-ghc-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/hp2ps is a link to a script (/opt/bin/hp2ps-ghc-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/hpc is a link to a script (/opt/bin/hpc-ghc-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/hsc2hs is a link to a script (/opt/bin/hsc2hs-ghc-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/runghc is a link to a script (/opt/bin/runghc-9.10.1) but missing requires for /bin/sh ghc-bootstrap.x86_64: W: symlink-to-binary-with-shebang /opt/bin/runhaskell is a link to a script (/opt/bin/runhaskell-9.10.1) but missing requires for /bin/sh A file in /usr/bin is a link to a script in a different place with a shebang. rpm won't be able to inject the needed interpreter as dependency, so it should be done manually. ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/Cabal-3.12.0.0-inplace/libHSCabal-3.12.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/Cabal-syntax-3.12.0.0-inplace/libHSCabal-syntax-3.12.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/array-0.5.7.0-inplace/libHSarray-0.5.7.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/base-4.20.0.0-inplace/libHSbase-4.20.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/binary-0.8.9.2-inplace/libHSbinary-0.8.9.2-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/bytestring-0.12.1.0-inplace/libHSbytestring-0.12.1.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/containers-0.7-inplace/libHScontainers-0.7-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/deepseq-1.5.0.0-inplace/libHSdeepseq-1.5.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/directory-1.3.8.3-inplace/libHSdirectory-1.3.8.3-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/exceptions-0.10.7-inplace/libHSexceptions-0.10.7-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/filepath-1.5.2.0-inplace/libHSfilepath-1.5.2.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-9.10.1-inplace/libHSghc-9.10.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-bignum-1.3-inplace/libHSghc-bignum-1.3-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-boot-9.10.1-inplace/libHSghc-boot-9.10.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-boot-th-9.10.1-inplace/libHSghc-boot-th-9.10.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-compact-0.1.0.0-inplace/libHSghc-compact-0.1.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-experimental-0.1.0.0-inplace/libHSghc-experimental-0.1.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-heap-9.10.1-inplace/libHSghc-heap-9.10.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-internal-9.1001.0-inplace/libHSghc-internal-9.1001.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-platform-0.1.0.0-inplace/libHSghc-platform-0.1.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-prim-0.11.0-inplace/libHSghc-prim-0.11.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghc-toolchain-0.1.0.0-inplace/libHSghc-toolchain-0.1.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/ghci-9.10.1-inplace/libHSghci-9.10.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/haskeline-0.8.2.1-inplace/libHShaskeline-0.8.2.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/hpc-0.7.0.1-inplace/libHShpc-0.7.0.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/integer-gmp-1.1-inplace/libHSinteger-gmp-1.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/mtl-2.3.1-inplace/libHSmtl-2.3.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/os-string-2.0.2-inplace/libHSos-string-2.0.2-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/parsec-3.1.17.0-inplace/libHSparsec-3.1.17.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/pretty-1.1.3.6-inplace/libHSpretty-1.1.3.6-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/process-1.6.19.0-inplace/libHSprocess-1.6.19.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/rts-1.0.2/libHSrts-1.0.2.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/rts-1.0.2/libHSrts-1.0.2_thr.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/semaphore-compat-1.0.0-inplace/libHSsemaphore-compat-1.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/stm-2.5.3.1-inplace/libHSstm-2.5.3.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/template-haskell-2.22.0.0-inplace/libHStemplate-haskell-2.22.0.0-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/terminfo-0.4.1.6-inplace/libHSterminfo-0.4.1.6-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/text-2.1.1-inplace/libHStext-2.1.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/time-1.12.2-inplace/libHStime-1.12.2-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/transformers-0.6.1.1-inplace/libHStransformers-0.6.1.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/unix-2.8.5.1-inplace/libHSunix-2.8.5.1-inplace.a ghc-bootstrap.x86_64: E: static-library-without-debuginfo /opt/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1/xhtml-3000.2.2.1-inplace/libHSxhtml-3000.2.2.1-inplace.a The static library doesn't contain any debuginfo. Binaries linking against this static library can't be properly debugged. ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/ghc-iserv-dyn-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/ghc-iserv-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/ghc-pkg-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/ghc-toolchain-bin-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/haddock-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/hp2ps-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/hpc-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/hsc2hs-ghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/runghc-9.10.1 ghc-bootstrap.x86_64: W: position-independent-executable-suggested /opt/lib/ghc-9.10.1/bin/unlit-ghc-9.10.1 This executable should be position independent (all binaries should). Check that it is built with -fPIE/-fpie in compiler flags and -pie in linker flags. ghc-bootstrap.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. ghc-bootstrap.spec:69: W: macro-in-comment %{version} ghc-bootstrap.spec:112: W: macro-in-comment %{SOURCE20} There is a unescaped macro after a shell style comment in the specfile. Macros are expanded everywhere, so check if it can cause a problem in this case and escape the macro with another leading % if appropriate. ghc-bootstrap.x86_64: E: filelist-forbidden-opt /opt/share ghc-bootstrap.x86_64: E: filelist-forbidden-opt /opt/bin ghc-bootstrap.x86_64: E: filelist-forbidden-opt /opt/lib /opt may not be used by distribution packages. It is reserved for 3rd party packagers. ghc-bootstrap.x86_64: E: explicit-lib-dependency libffi-devel ghc-bootstrap.x86_64: E: explicit-lib-dependency libncurses5 ghc-bootstrap.x86_64: E: explicit-lib-dependency libnuma-devel You must let rpm find the library dependencies by itself. Do not put unneeded explicit Requires: tags. ghc-bootstrap.x86_64: E: env-script-interpreter (Badness: 9) /opt/lib/ghc-9.10.1/lib/post-link.mjs /usr/bin/env -S node 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. ghc-bootstrap.x86_64: E: devel-dependency gmp-devel Your package has a dependency on a devel package but it's not a devel package itself. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 32.7 78.2 BinariesCheck 4.5 10.7 SignatureCheck 1.8 4.3 FilesCheck 1.3 3.2 SUIDPermissionsCheck 0.7 1.8 TOTAL 41.8 100.0 2 packages and 0 specfiles checked; 51 errors, 23 warnings, 5081 filtered, 59 badness; has taken 42.0 s