Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1611649

Summary: drop the legacy initscipts directories
Product: [Fedora] Fedora Reporter: Peter Robinson <pbrobinson>
Component: chkconfigAssignee: Lukáš Nykrýn <lnykryn>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: jsynacek, lnykryn, msekleta
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-08-02 15:16:49 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1269538    

Description Peter Robinson 2018-08-02 14:37:39 UTC
In the vast majority of cases the legacy initscripts directories are no longer used, in the cases where they are the packages now need to depend on initscripts package anyway which provides these directories. chkconfig itself is useful without these directories (or a dependency on initscripts).

diff --git a/chkconfig.spec b/chkconfig.spec
index c79f7bb..fcf6b94 100644
--- a/chkconfig.spec
+++ b/chkconfig.spec
@@ -38,12 +38,6 @@ make check
 %install
 make DESTDIR=$RPM_BUILD_ROOT MANDIR=%{_mandir} SBINDIR=%{_sbindir} install
 
-mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d
-ln -s rc.d/init.d $RPM_BUILD_ROOT/etc/init.d
-for n in 0 1 2 3 4 5 6; do
-    mkdir -p $RPM_BUILD_ROOT/etc/rc.d/rc${n}.d
-    ln -s rc.d/rc${n}.d $RPM_BUILD_ROOT/etc/rc${n}.d
-done
 mkdir -p $RPM_BUILD_ROOT/etc/chkconfig.d
 
 %find_lang %{name}
@@ -54,12 +48,6 @@ mkdir -p $RPM_BUILD_ROOT/etc/chkconfig.d
 /sbin/chkconfig
 %{_sbindir}/update-alternatives
 %{_sbindir}/alternatives
-/etc/chkconfig.d
-/etc/init.d
-/etc/rc.d
-/etc/rc.d/init.d
-/etc/rc[0-6].d
-/etc/rc.d/rc[0-6].d
 %dir /var/lib/alternatives
 %{_mandir}/*/chkconfig*
 %{_mandir}/*/update-alternatives*

Comment 1 Lukáš Nykrýn 2018-08-02 15:16:49 UTC
Chkconfig operates on those directories, which means it is either supposed to own them or have a dependency on a package that owns them.

Comment 2 Peter Robinson 2018-08-02 15:19:55 UTC
(In reply to Lukáš Nykrýn from comment #1)
> Chkconfig operates on those directories, which means it is either supposed
> to own them or have a dependency on a package that owns them.

But it can also do systemd one can it not?

Comment 3 Lukáš Nykrýn 2018-08-02 15:58:16 UTC
Yes it can, but I don't see that as an argument.

But imagine the following scenario, during installation of a service with initscripts, you don't have to necessary install initscripts package first, since that is a runtime dependency, but you need to have chkconfig already, because it is used in scriptlets. And in such moments you need to have those directories and they need to be put there by chkconfig.

Comment 4 Peter Robinson 2018-08-02 16:20:29 UTC
Frankly if I can split out alternatives I really can't bring myself to care because I can remove chkconfig and hence the directories in the all the general Fedora use cases I care about