Bug 723460

Summary: systemd related warning
Product: [Fedora] Fedora Reporter: Marcela Mašláňová <mmaslano>
Component: rpmlintAssignee: Tom "spot" Callaway <tcallawa>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: unspecified    
Version: rawhideCC: a.badger, manuel.wolfshant, tcallawa, tmz, ville.skytta
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-07-20 14:54:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Marcela Mašláňová 2011-07-20 09:32:46 UTC
I suppose I have my package according to packaging guidelines, so could you remove these errors from rpmlint output?

at.src:136: E: hardcoded-library-path in %{buildroot}/lib/systemd/system/
at.src:137: E: hardcoded-library-path in %{buildroot}/lib/systemd/system/atd.service
at.src:194: E: hardcoded-library-path in /lib/systemd/system/atd.service

For *-sysvinit sub-package does exist error, which probably can't be fixed in rpmlint:
at-sysvinit.x86_64: E: init-script-without-chkconfig-postin /etc/rc.d/init.d/atd
at-sysvinit.x86_64: E: init-script-without-chkconfig-preun /etc/rc.d/init.d/atd

But this warning might be fixed:
at-sysvinit.x86_64: W: incoherent-init-script-name atd ('at-sysvinit', 'at-sysvinitd')
Initscript name is correctly atd, but it's in sub-package at-sysvinit.

Comment 1 Tom "spot" Callaway 2011-07-20 13:41:53 UTC
Are you using %{_unitdir} instead of /lib/systemd/system/ ?

The hardcoded-library-path test isn't very smart, I don't think it will go off if you're using the macro.

Comment 2 Marcela Mašláňová 2011-07-20 14:45:27 UTC
(In reply to comment #1)
> Are you using %{_unitdir} instead of /lib/systemd/system/ ?
> 
> The hardcoded-library-path test isn't very smart, I don't think it will go off
> if you're using the macro.

Ha, new macro! Thanks.

I'm not sure how this warnings should be solved but they should be somehow.

Comment 3 Tom "spot" Callaway 2011-07-20 14:54:23 UTC
As a general rule, I'm a lot less concerned about resolving Warnings, than I am Errors. The intent of rpmlint is to identify potential areas of concern, then to let the human packagers examine them and determine if they are valid or not. I'm not sure of a good way to teach rpmlint that a "$foo-sysvinit" package will have a different initscript name, because any of the ways I can think of will make the check far more complicated than it is currently.

So, I'm going to close this bug out, unless the hardcoded-library-path error triggers when you use the %{_unitdir} macro (and if it does, please reopen the bug).

Thanks.

Comment 4 Ville Skyttä 2011-07-20 15:33:28 UTC
(In reply to comment #0)

> at-sysvinit.x86_64: E: init-script-without-chkconfig-postin
> /etc/rc.d/init.d/atd
> at-sysvinit.x86_64: E: init-script-without-chkconfig-preun /etc/rc.d/init.d/atd

This could be filtered out in Fedora's rpmlint config with something like this:

addFilter("-sysvinit.* init-script-without-chkconfig")

But is it actually intentional that when the at-sysvinit subpackage is installed, chkconfig will not be run for it?  I haven't looked into guidelines concerning *-sysvinit packages, but not running chkconfig for them sounds fishy to me.

> at-sysvinit.x86_64: W: incoherent-init-script-name atd ('at-sysvinit',
> 'at-sysvinitd')
> Initscript name is correctly atd, but it's in sub-package at-sysvinit.

http://rpmlint.zarb.org/cgi-bin/trac.cgi/changeset/1875


By the way, these errors for at-sysvinit-3.1.12-10.fc16.x86_64.rpm look like something you probably want to look into:

at-sysvinit.x86_64: E: non-executable-script /etc/rc.d/init.d/atd 0644L /bin/sh
at-sysvinit.x86_64: E: init-script-non-executable /etc/rc.d/init.d/atd