]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
systemd: Don't install resolv.conf symlink when resolved is disabled
authorAndreas Oberritter <obi@opendreambox.org>
Fri, 9 Mar 2018 00:07:42 +0000 (01:07 +0100)
committerAndreas Oberritter <obi@opendreambox.org>
Thu, 2 Jul 2020 10:18:39 +0000 (12:18 +0200)
There's no point in letting systemd install it, if systemd doesn't
provide DNS. Let other services like resolvconf or connman do that,
because only they know the location they expect.

This also fixes a problem during do_rootfs with apt and dpkg's
update-alternatives:

| update-alternatives: error: alternative path /etc/resolv-conf.systemd doesn't exist
| dpkg: error processing package systemd:armhf (--configure):
|  subprocess installed post-installation script returned error exit status 2

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
meta/recipes-core/systemd/systemd_243.2.bb

index 082eb4c384c2a1e7771120d3e12d631b40eab753..15ccf66afe46617c1a9057f601b84c4e6fccfb7f 100644 (file)
@@ -267,12 +267,7 @@ do_install() {
        if [ -s ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf ]; then
                ${@bb.utils.contains('PACKAGECONFIG', 'networkd', ':', 'sed -i -e "\$ad /run/systemd/netif/links 0755 root root -" ${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf', d)}
        fi
-       if ! ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'true', 'false', d)}; then
-               echo 'L! ${sysconfdir}/resolv.conf - - - - ../run/systemd/resolve/resolv.conf' >>${D}${exec_prefix}/lib/tmpfiles.d/etc.conf
-               echo 'd /run/systemd/resolve 0755 root root -' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf
-               echo 'f /run/systemd/resolve/resolv.conf 0644 root root' >>${D}${exec_prefix}/lib/tmpfiles.d/systemd.conf
-               ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd
-       else
+       if ${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'true', 'false', d)}; then
                sed -i -e "s%^L! /etc/resolv.conf.*$%L! /etc/resolv.conf - - - - ../run/systemd/resolve/resolv.conf%g" ${D}${exec_prefix}/lib/tmpfiles.d/etc.conf
                ln -s ../run/systemd/resolve/resolv.conf ${D}${sysconfdir}/resolv-conf.systemd
        fi