============================ rpmlint session starts ============================ rpmlint: 2.6.1 configuration: /opt/testing/lib64/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 rpmlintrc: /home/abuild/rpmbuild/SOURCES/mariadb-rpmlintrc checks: 41, packages: 11 mariadb.x86_64: W: zero-perms-ghost Suggestion: "%ghost %attr(0644,root,root) /var/adm/update-messages/mariadb-11.6.1-1.1-something" Your package contains a file with no permissions. This is usually an error because the file won't be accessible by any user. You should check the file permissions and ensure that are correct or fix it using "%attr" macro in %files section. http://ftp.rpm.org/max-rpm/s1-rpm-anywhere-specifying-file-attributes.html mariadb.src: E: unused-rpmlintrc-filter "arch-dependent-file-in-usr-share .* /usr/share/mariadb-test/lib/My/SafeProcess/wsrep_check_version" mariadb.src: E: unused-rpmlintrc-filter "arch-dependent-file-in-usr-share .* /usr/share/mariadb-test/lib/My/SafeProcess/my_safe_process" mariadb.src: E: unused-rpmlintrc-filter "arch-dependent-file-in-usr-share .* /usr/share/mariadb-test/suite/plugins/pam/pam_mariadb_mtr.so" mariadb.x86_64: W: tmpfile-not-in-filelist /run/mysql Please add the specified file to your %files section as %ghost so users can easily query who created the file, it gets uninstalled on package removal and finally other rpmlint checks see it. mariadb.x86_64: E: systemd-service-without-service_del_preun mysql.service The package contains a systemd service but doesn't contain a %preun with a call to service_del_preun. mariadb.x86_64: E: systemd-service-without-service_del_postun mysql.service The package contains a systemd service but doesn't contain a %postun with a call to service_del_postun. mariadb.x86_64: E: systemd-service-without-service_add_pre mysql.service The package contains a systemd service but doesn't contain a %pre with a call to service_add_pre. mariadb.x86_64: E: systemd-service-without-service_add_post mysql.service The package contains a systemd service but doesn't contain a %post with a call to service_add_post. mariadb.x86_64: E: script-without-shebang /usr/share/mariadb/mariadb.logrotate mariadb-bench.x86_64: E: script-without-shebang /usr/share/sql-bench/myisam.cnf mariadb-test.x86_64: E: script-without-shebang /usr/share/mariadb-test/main/lowercase_table2.result 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. mariadb.x86_64: W: potential-bashisms /usr/bin/mariadb-secure-installation mariadb.x86_64: W: potential-bashisms /usr/bin/mariadbd-safe mariadb-galera.x86_64: W: potential-bashisms /usr/share/mariadb/wsrep_notify mariadb-test.x86_64: W: potential-bashisms /usr/share/mariadb-test/std_data/wsrep_notify.sh mariadb-test.x86_64: W: potential-bashisms /usr/share/mariadb-test/std_data/wsrep_notify_ssl.sh checkbashisms reported potential bashisms in a /bin/sh shell script, you might want to manually check this script for bashisms. mariadb.x86_64: W: permissions-missing-verifyscript missing %verify_permissions -e /usr/lib64/mysql/plugin/auth_pam_tool_dir/auth_pam_tool Please add a %verifyscript section mariadb.x86_64: W: non-standard-dir-in-var adm Your package is creating a non-standard subdirectory in /var. The standard directories are: cache, lib, local, lock, log, opt, run, spool, tmp, account, crash, games, mail, yp. mariadb-galera.x86_64: E: no-binary mariadb-rpm-macros.x86_64: E: no-binary The package should be of the noarch architecture because it doesn't contain any binaries. mariadb.x86_64: W: name-repeated-in-summary MariaDB mariadb.src: W: name-repeated-in-summary MariaDB The name of the package is repeated in its summary. Make the summary brief and to the point without including redundant information in it. mariadb.x86_64: E: logrotate-log-dir-not-packaged /var/lib/mysql Please add the specified directory to the file list to be able to check permissions. mariadb-bench.x86_64: W: files-duplicate /usr/share/sql-bench/Data/ATIS/stop1.txt /usr/share/sql-bench/Data/ATIS/stop.txt Your package contains duplicated files that are not hard- or symlinks. You should use the %fdupes macro to link the files to one. mariadb-test.x86_64: E: file-parent-ownership-mismatch Path "/usr/share/mariadb-test/valgrind.supp" owned by "root" is stored in directory owned by "mysql" A file or directory is stored in a directory owned by another unprivileged user. This is a security issue since the owner of the parent directory can replace this file/directory with a different one. mariadb-galera.x86_64: E: env-script-interpreter (Badness: 9) /usr/bin/wsrep_sst_backup /usr/bin/env bash mariadb-galera.x86_64: E: env-script-interpreter (Badness: 9) /usr/bin/wsrep_sst_mariabackup /usr/bin/env bash mariadb-galera.x86_64: E: env-script-interpreter (Badness: 9) /usr/bin/wsrep_sst_mysqldump /usr/bin/env bash mariadb-galera.x86_64: E: env-script-interpreter (Badness: 9) /usr/bin/wsrep_sst_rsync /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. mariadb.x86_64: W: binary-or-shlib-calls-gethostbyname /usr/bin/resolveip The binary calls gethostbyname. Please port the code to use getaddrinfo. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 4.8 28.2 BinariesCheck 4.1 24.4 BashismsCheck 2.6 15.4 FilesCheck 2.2 13.2 BuildRootAndDateCheck 1.0 6.1 SignatureCheck 0.7 3.9 SharedLibraryPolicyCheck 0.5 2.8 FilelistCheck 0.4 2.4 TOTAL 17.0 100.0 11 packages and 0 specfiles checked; 18 errors, 13 warnings, 113 filtered, 50 badness; has taken 17.4 s