[OE-core] [meta-oe][poky][PATCH v2] systemd: resolved linked even if the option is disabled

nick83ola nick83ola at gmail.com
Tue Jul 17 09:26:39 UTC 2018


Hi Chen Qi,
Thanks I didn't see your previous response.
I will have a look and post my considerations.

Best Regards
Nicola Lunghi

On Mon, 16 Jul 2018 at 10:09, ChenQi <Qi.Chen at windriver.com> wrote:

> Hi Nicola,
>
> As I replied on poky mailing list to this patch, you need to first check
> the following three commits.
>
> commit 00e4662e55f66570cae29240c22b4d74b79d3ca5
> Author: Maxin B. John <maxin.john at intel.com> <maxin.john at intel.com>
> Date:   Mon Jun 12 18:10:21 2017 +0300
>
>     systemd: enable resolved and networkd
>
>     Enable systemd-resolved and systemd-networkd by default.
>     Make it co-exist with connman and  Fix associated problems
>     in read-only rootfs.
>
>     Fixes [YOCTO #11331]
>
>     (From OE-Core rev: d9b6d538e3d81ab0d5e7b7b6adecef555d782217)
>
>     Signed-off-by: Maxin B. John <maxin.john at intel.com>
> <maxin.john at intel.com>
>     Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> <richard.purdie at linuxfoundation.org>
>
> commit 669edd04432f8e76e32bd7f34f4d9aa63eef4038
> Author: Khem Raj <raj.khem at gmail.com> <raj.khem at gmail.com>
> Date:   Fri Dec 16 14:07:31 2016 -0800
>
>     systemd: point to correct resolv.conf when resolved is enabled
>
>     latest systemd has changed the resolved defaults which points to
>     127.0.0.53 port 53 on local network. If someone wants to use
>     host-local IP address then it can be pointed to copy in /lib/systemd
>
>     (From OE-Core rev: 99d1199fd0961f94732a1a533d66472ca17cf6f5)
>
>     Signed-off-by: Khem Raj <raj.khem at gmail.com> <raj.khem at gmail.com>
>     Signed-off-by: Ross Burton <ross.burton at intel.com>
> <ross.burton at intel.com>
>     Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> <richard.purdie at linuxfoundation.org>
>
> commit b80da02ce9b683f96393fe0ea1f5f1a5f1a07c89
> Author: Christopher Larson <chris_larson at mentor.com>
> <chris_larson at mentor.com>
> Date:   Wed Nov 4 20:19:19 2015 -0700
>
>     systemd: arrange for volatile /etc/resolv.conf
>
>     On sysvinit systems, volatiles is configured to make /etc/resolv.conf
> symlink
>     to a file in a volatile path, which lets us write to /etc/resolv.conf
> for
>     read-only-rootfs. For systemd, this isn't set up unless we enable
>     systemd-resolved, which we don't by default. When it's not enabled,
> create the
>     /etc/resolv.conf symlink and ensure the volatile path is created on
> boot with
>     tmpfiles.d.
>
>     (From OE-Core rev: 7f087f161e8942bcd35f88999dfca418f01cd7fa)
>
>     Signed-off-by: Christopher Larson <chris_larson at mentor.com>
> <chris_larson at mentor.com>
>     Signed-off-by: Ross Burton <ross.burton at intel.com>
> <ross.burton at intel.com>
>     Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> <richard.purdie at linuxfoundation.org>
>
> Best Regards,
> Chen Qi
>
>
> On 07/16/2018 04:17 PM, Nicola Lunghi wrote:
>
> From: Nicola Lunghi <nicola.lunghi at jci.com> <nicola.lunghi at jci.com>
>
> if resolved option is not selected the package systemd-resolved
> is not installed so it cannot provide an alternative for
> resolv.conf
>
> In this recipe the previous check was instead reversing the check (note the !).
>
> This patch avoid messing with resol.conf link if resolved is disabled in
> the package config.
>
> This in particular if we compile systemd with musl where systemd-resolved
> cannot be compiled.
>
> Signed-off-by: Nicola Lunghi <nicola.lunghi at jci.com> <nicola.lunghi at jci.com>
> ---
>  meta/recipes-core/systemd/systemd_237.bb | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/meta/recipes-core/systemd/systemd_237.bb b/meta/recipes-core/systemd/systemd_237.bb
> index 3efca33e73..bd6dcef637 100644
> --- a/meta/recipes-core/systemd/systemd_237.bb
> +++ b/meta/recipes-core/systemd/systemd_237.bb
> @@ -258,14 +258,11 @@ 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
> +	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
> -		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
>  	install -Dm 0755 ${S}/src/systemctl/systemd-sysv-install.SKELETON ${D}${systemd_unitdir}/systemd-sysv-install
>
> @@ -539,7 +536,7 @@ python __anonymous() {
>  # TODO:
>  # u-a for runlevel and telinit
>
> -ALTERNATIVE_${PN} = "init halt reboot shutdown poweroff runlevel resolv-conf"
> +ALTERNATIVE_${PN} = "init halt reboot shutdown poweroff runlevel"
>
>  ALTERNATIVE_TARGET[init] = "${rootlibexecdir}/systemd/systemd"
>  ALTERNATIVE_LINK_NAME[init] = "${base_sbindir}/init"
> @@ -565,6 +562,7 @@ ALTERNATIVE_TARGET[runlevel] = "${base_bindir}/systemctl"
>  ALTERNATIVE_LINK_NAME[runlevel] = "${base_sbindir}/runlevel"
>  ALTERNATIVE_PRIORITY[runlevel] ?= "300"
>
> +ALTERNATIVE_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'resolved', 'resolv-conf', '', d)}" <$%7B at bb.utils.contains('PACKAGECONFIG','resolved','resolv-conf','',d)%7D>
>  ALTERNATIVE_TARGET[resolv-conf] = "${sysconfdir}/resolv-conf.systemd"
>  ALTERNATIVE_LINK_NAME[resolv-conf] = "${sysconfdir}/resolv.conf"
>  ALTERNATIVE_PRIORITY[resolv-conf] ?= "50"
>
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180717/19750b64/attachment-0002.html>


More information about the Openembedded-core mailing list