The legacy initscript package is pulled in by ppp. It would be good to consider modifying the ppp package so that it doesn't need initscripts any more. See: https://bugzilla.redhat.com/show_bug.cgi?id=1090090#c11
There's also a similar request for dhclient: https://bugzilla.redhat.com/show_bug.cgi?id=1098172
There are shell scripts shipped in the package which source generic network helper scripts shipped in initscripts package. Currently there is no easy way how to get rid of those scripts. If you have ideas how can we improve current state I am all ears and happy to take patches tough. For now CANTFIX. Sorry.
According to Michal (on IRC), it's /etc/ppp/* files which depend on /etc/sysconfig/network-scripts/network-functions. I checked the actual dependencies using the following command: # grep -h '^[a-z].*(' /etc/sysconfig/network-scripts/network-functions | sed -r 's/([^ ]*) *\(.*/grep --color \1 \/etc\/ppp\/*/' | bash And the result shows the following functions: * net_log * source_config The first one is self-contained while the latter one reads the ifcfg configuration, making the issue very similar to the one in dhclient: (In reply to Pavel Šimerda (pavlix) from comment #1) > There's also a similar request for dhclient: > > https://bugzilla.redhat.com/show_bug.cgi?id=1098172
Actually there is more, /etc/sysconfig/network-scripts/if{up,down}-ppp scripts are also dependent on stuff shipped in initscripts.
(In reply to Michal Sekletar from comment #4) > Actually there is more, /etc/sysconfig/network-scripts/if{up,down}-ppp > scripts are also dependent on stuff shipped in initscripts. Would it be too brave to just move those to the initscripts package (adding a check for pppd) where other similar scripts reside?
We moved these scripts from initscripts to ppp package quite recently [0] as part of the campaign to strip down the initscripts as much as possible and put things to the places where they really belong. I guess that moving that back doesn't make sense. There is no point having these scripts on the system if ppp is not installed. [0] http://pkgs.fedoraproject.org/cgit/ppp.git/commit/?id=e3ff43f81265ccf70cf080301252778e182ca61c
(In reply to Michal Sekletar from comment #6) > We moved these scripts from initscripts to ppp package quite recently [0] as > part of the campaign to strip down the initscripts as much as possible I understand it might have been a solution at that time but putting files into initscripts directory effectively requires the dependency, doesn't it? > and put things to the places where they really belong. > > There is no point having these scripts on the system if ppp is not installed. There is no point having these scripts on the system if initscripts is not installed, so in this respect initscripts and ppp is equal. The logical dependency of those files is actually on a *combination* of initscripts and ppp. Therefore the choice of the package has to be practical, not logical. If we accept that ppp shouldn't depend on initscripts package nor any subpackage, then it shouldn't specifically depend on the /etc/sysconfig/network-scripts directory and therefore it shouldn't include any scripts in that directory. For practical reasons, I would rather move /etc/sysconfig/network* to a subpackage initscripts-network (as suggested by lnykryn [1]) of the initscripts source package, including the stuff in ppp and possibly other packages. That way we would have all legacy networking stuff in one place. I believe the networking part of the package is substantially independent to warrant a subpackage. [1] https://lists.fedoraproject.org/pipermail/devel/2014-April/198518.html
(In reply to Pavel Šimerda (pavlix) from comment #7) > There is no point having these scripts on the system if initscripts is not > installed, so in this respect initscripts and ppp is equal. The logical > dependency of those files is actually on a *combination* of initscripts and > ppp. Therefore the choice of the package has to be practical, not logical. > After initscripts split is done I was planning to add dependency on whatever sub-package ship those scripts. That sub-package would be installed by default anyway unless you want to break 3-rd party applications. Those helper scripts are documented in official docs, you can't get rid of them just like that. > If we accept that ppp shouldn't depend on initscripts package nor any > sub-package, then it shouldn't specifically depend on the > /etc/sysconfig/network-scripts directory and therefore it shouldn't include > any scripts in that directory. Nothing prevents you to install files into subdir which is owned by another package and not have hard dependency on the package. For example many tools ship logrotate config files which lives under dir owned by logrotate rpm but they don't hard depend on it thus admin may decide to uninstall it. I am not advocating that this should be the case all times, but unless we have soft deps in rpms this is reasonable to do in some cases. What I am trying to say is that this is not a problem. Problem is that ppp scripts depends on scripts from initscripts package. > > For practical reasons, I would rather move /etc/sysconfig/network* to a > subpackage initscripts-network (as suggested by lnykryn [1]) of the > initscripts source package, including the stuff in ppp and possibly other > packages. That way we would have all legacy networking stuff in one place. I > believe the networking part of the package is substantially independent to > warrant a sub-package. I don't think that this is a good idea. Why should you have all the legacy stuff on the system if you don't use it. FYI, move of ppp related scripts from initscripts to ppp package was suggested by Lukas.
This could be fixed after we decide what we will do with ifup in future and how we will handle things which are not implemented in NM or networkd. In those cases you need the ifup command. So I am strictly against arguing about some specific implementation detail, until we have a full picture.
There are still two things to be considered. One is the subpackaging that can lnykryn is talking about, the other is that ppp is a depenency for packages that can use it *without initscripts*, thus bringing initscripts (or a subpackage) entirely unnecessarily. I can imagine that in the first round we would keep initscripts-network in a default installation but at least it could be explicitly removed. By keeping the hard dependency on initscripts (or a subpackage), we are essentialy preventing people from experimenting with a system entirely without initscripts. In my opinion, it is worth getting rid of dependencies on initscripts (or subpackages) in packages that work without them to get more flexibility for the future.