============================ rpmlint session starts ============================ rpmlint: 2.7.0 configuration: /opt/testing/lib/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 rpmlintrc: /home/abuild/rpmbuild/SOURCES/tomcat-rpmlintrc checks: 41, packages: 12 tomcat-el-3_0-api.noarch: W: zero-perms-ghost Suggestion: "%ghost %attr(0644,root,root) /etc/alternatives/el_1_0_api" tomcat-el-3_0-api.noarch: W: zero-perms-ghost Suggestion: "%ghost %attr(0644,root,root) /etc/alternatives/el_api" tomcat-jsp-2_3-api.noarch: W: zero-perms-ghost Suggestion: "%ghost %attr(0644,root,root) /etc/alternatives/jsp" tomcat-servlet-4_0-api.noarch: W: zero-perms-ghost Suggestion: "%ghost %attr(0644,root,root) /etc/alternatives/servlet" 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 tomcat.noarch: E: zero-length /usr/share/fillup-templates/sysconfig.tomcat tomcat-el-3_0-api.noarch: E: update-alternatives-postun-call-missing The package does not call update-alternatives --remove in postun phase to remove all the configuration for each individual --install binary that was done in postun. tomcat-jsvc.noarch: E: script-without-shebang /usr/lib/systemd/system/tomcat-jsvc.service 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. tomcat-javadoc.noarch: W: package-with-huge-docs 100% More than half the size of your package is documentation. Consider splitting it into a -doc subpackage. tomcat-el-3_0-api.noarch: I: package-supports-update-alternatives tomcat-jsp-2_3-api.noarch: I: package-supports-update-alternatives tomcat-servlet-4_0-api.noarch: I: package-supports-update-alternatives tomcat-el-3_0-api.noarch: W: obsolete-not-provided tomcat-el-2_2-api tomcat-jsp-2_3-api.noarch: W: obsolete-not-provided tomcat-jsp-2_2-api tomcat-servlet-4_0-api.noarch: W: obsolete-not-provided tomcat-servlet-3_0-api tomcat-servlet-4_0-api.noarch: W: obsolete-not-provided tomcat-servlet-3_1-api 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. tomcat.noarch: E: non-executable-script /usr/bin/tomcat-digest 644 /bin/sh tomcat.noarch: E: non-executable-script /usr/bin/tomcat-tool-wrapper 644 /bin/sh tomcat.noarch: E: non-executable-script /usr/libexec/tomcat/functions 644 /bin/bash tomcat.noarch: E: non-executable-script /usr/sbin/tomcat 644 /bin/bash 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. tomcat.noarch: W: non-executable-in-bin /usr/bin/tomcat-digest 644 tomcat.noarch: W: non-executable-in-bin /usr/bin/tomcat-tool-wrapper 644 tomcat.noarch: W: non-executable-in-bin /usr/sbin/tomcat 644 A file is being installed in /usr/bin, but is not an executable. Be sure that the file is an executable or that it has executable permissions. tomcat-admin-webapps.noarch: W: non-etc-or-var-file-marked-as-conffile /usr/share/tomcat/tomcat-webapps/host-manager/META-INF/context.xml tomcat-admin-webapps.noarch: W: non-etc-or-var-file-marked-as-conffile /usr/share/tomcat/tomcat-webapps/manager/META-INF/context.xml tomcat-webapps.noarch: W: non-etc-or-var-file-marked-as-conffile /usr/share/tomcat/tomcat-webapps/examples/META-INF/context.xml A file not in /etc or /var is marked as being a configuration file (%config). Please put your configuration files in /etc or /var. tomcat.noarch: W: non-conffile-in-etc /etc/tomcat/allowLinking.xslt tomcat.noarch: W: non-conffile-in-etc /etc/tomcat/conf.d/README tomcat.noarch: W: non-conffile-in-etc /etc/tomcat/valve.xslt 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. tomcat.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. tomcat.spec:656: W: macro-in-comment %{_sysconfdir} 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. tomcat.noarch: E: explicit-lib-dependency libxslt-tools tomcat-admin-webapps.noarch: E: explicit-lib-dependency libxslt-tools tomcat-docs-webapp.noarch: E: explicit-lib-dependency libxslt-tools tomcat-webapps.noarch: E: explicit-lib-dependency libxslt-tools You must let rpm find the library dependencies by itself. Do not put unneeded explicit Requires: tags. tomcat-servlet-4_0-api.noarch: W: dangling-symlink /usr/share/java/servlet.jar /etc/alternatives/servlet.jar The target of the symbolic link does not exist within this package or its file based dependencies. Verify spelling of the link target and that the target is included in a package in this package's dependency chain. tomcat-el-3_0-api.noarch: E: alternative-link-missing /etc/alternatives/tomcat-el_api.jar tomcat-el-3_0-api.noarch: E: alternative-link-missing /etc/alternatives/tomcat-el_1_0_api.jar tomcat-jsp-2_3-api.noarch: E: alternative-link-missing /etc/alternatives/tomcat-jsp.jar tomcat-servlet-4_0-api.noarch: E: alternative-link-missing /etc/alternatives/servlet.jar The file %{_sysconfdir}/alternatives/$(basename generic-name) is missing in the file list. Mark it as %ghost and add it to the file list. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 2.8 51.1 FilesCheck 0.8 14.5 ZipCheck 0.4 7.0 BashismsCheck 0.3 5.4 SUIDPermissionsCheck 0.3 4.8 BuildRootAndDateCheck 0.2 4.2 SignatureCheck 0.2 4.1 TagsCheck 0.1 2.3 FilelistCheck 0.1 2.0 TOTAL 5.4 100.0 12 packages and 0 specfiles checked; 15 errors, 21 warnings, 161 filtered, 15 badness; has taken 5.6 s