diff options
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/update-rc.d.bbclass | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/meta/classes/update-rc.d.bbclass b/meta/classes/update-rc.d.bbclass index 65bf022e49..06b91c10ed 100644 --- a/meta/classes/update-rc.d.bbclass +++ b/meta/classes/update-rc.d.bbclass | |||
@@ -75,9 +75,12 @@ python populate_packages_updatercd () { | |||
75 | postrm += d.getVar('updatercd_postrm', True) | 75 | postrm += d.getVar('updatercd_postrm', True) |
76 | d.setVar('pkg_postrm_%s' % pkg, postrm) | 76 | d.setVar('pkg_postrm_%s' % pkg, postrm) |
77 | 77 | ||
78 | # If the systemd class has also been inherited, then don't do anything as | 78 | # Run if the sysvinit feature is present, or if the systemd feature is present |
79 | # the systemd units will override anything created by update-rc.d. | 79 | # but the systemd class hasn't been inherited. We want to run in the latter case |
80 | if not d.getVar("SYSTEMD_BBCLASS_ENABLED", True): | 80 | # as systemd has sysvinit compatibility, but we don't want to always so that |
81 | # pure systemd images don't have redundent sysvinit files. | ||
82 | if "sysvinit" in d.getVar("DISTRO_FEATURES").split() or \ | ||
83 | ("systemd" in d.getVar("DISTRO_FEATURES").split() and not d.getVar("SYSTEMD_BBCLASS_ENABLED", True)): | ||
81 | pkgs = d.getVar('INITSCRIPT_PACKAGES', True) | 84 | pkgs = d.getVar('INITSCRIPT_PACKAGES', True) |
82 | if pkgs == None: | 85 | if pkgs == None: |
83 | pkgs = d.getVar('UPDATERCPN', True) | 86 | pkgs = d.getVar('UPDATERCPN', True) |