The logind.conf config snippet installed by this recipe unconditionally sets KillUserProcesses=yes, so logind terminates the whole session scope when a login session ends. Among other things this kills detached screen or tmux sessions on logout, which is surprising on interactive development images, and there is currently no recipe-level way to turn the policy off.
Add a 'kill-user-processes' PACKAGECONFIG option, enabled by default, so behaviour is unchanged unless a distro or image opts out with: PACKAGECONFIG:remove:pn-systemd-conf = "kill-user-processes" Signed-off-by: Carlos Alberto Lopez Perez <[email protected]> --- meta/recipes-core/systemd/systemd-conf/logind.conf | 2 +- meta/recipes-core/systemd/systemd-conf_1.0.bb | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/meta/recipes-core/systemd/systemd-conf/logind.conf b/meta/recipes-core/systemd/systemd-conf/logind.conf index bf7f6920fa..25f01f3fb6 100644 --- a/meta/recipes-core/systemd/systemd-conf/logind.conf +++ b/meta/recipes-core/systemd/systemd-conf/logind.conf @@ -1,2 +1,2 @@ [Login] -KillUserProcesses=yes +KillUserProcesses=@KILL_USER_PROCESSES@ diff --git a/meta/recipes-core/systemd/systemd-conf_1.0.bb b/meta/recipes-core/systemd/systemd-conf_1.0.bb index 60066cd60a..55bbeb69eb 100644 --- a/meta/recipes-core/systemd/systemd-conf_1.0.bb +++ b/meta/recipes-core/systemd/systemd-conf_1.0.bb @@ -10,8 +10,9 @@ REQUIRED_DISTRO_FEATURES += "usrmerge" PE = "1" -PACKAGECONFIG ??= "dhcp-ethernet" +PACKAGECONFIG ??= "dhcp-ethernet kill-user-processes" PACKAGECONFIG[dhcp-ethernet] = "" +PACKAGECONFIG[kill-user-processes] = "" SRC_URI = "\ file://journald.conf \ @@ -28,6 +29,9 @@ do_install() { install -D -m0644 ${S}/logind.conf ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf install -D -m0644 ${S}/system.conf ${D}${systemd_unitdir}/system.conf.d/00-${PN}.conf + KILL_USER_PROCESSES="${@bb.utils.contains('PACKAGECONFIG', 'kill-user-processes', 'yes', 'no', d)}" + sed -i "s/@KILL_USER_PROCESSES@/${KILL_USER_PROCESSES}/" ${D}${systemd_unitdir}/logind.conf.d/00-${PN}.conf + if ${@bb.utils.contains('PACKAGECONFIG', 'dhcp-ethernet', 'true', 'false', d)}; then install -D -m0644 ${S}/wired.network ${D}${systemd_unitdir}/network/80-wired.network fi -- 2.47.3
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#238621): https://lists.openembedded.org/g/openembedded-core/message/238621 Mute This Topic: https://lists.openembedded.org/mt/119773876/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
