From 6b9d2e41147f91da5d1152eae9ee6e47b3ee0f32 Mon Sep 17 00:00:00 2001 From: Hector Palacios Date: Tue, 24 Feb 2026 17:05:00 +0100 Subject: [PATCH] systemd-conf: machine-configurable power key behavior Use placeholders and machine-configurable variables to determine systemd behavior when receiving power key events. By default, these are: - short press: suspend - long press: graceful poweroff Signed-off-by: Hector Palacios --- meta-digi-arm/conf/machine/include/digi-defaults.inc | 4 ++++ .../recipes-core/systemd/systemd-conf/logind.conf-digi | 4 ++-- meta-digi-dey/recipes-core/systemd/systemd-conf_%.bbappend | 4 ++++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/meta-digi-arm/conf/machine/include/digi-defaults.inc b/meta-digi-arm/conf/machine/include/digi-defaults.inc index a39a1bd4c..573c1c5f9 100644 --- a/meta-digi-arm/conf/machine/include/digi-defaults.inc +++ b/meta-digi-arm/conf/machine/include/digi-defaults.inc @@ -130,3 +130,7 @@ IMAGE_FSTYPES ?= "${@ \ '' , d), \ d) \ }" + +# Systemd logind power key event +LOGIND_HANDLE_POWER_KEY ??= "suspend" +LOGIND_HANDLE_POWER_KEY_LONGPRESS ??= "poweroff" diff --git a/meta-digi-dey/recipes-core/systemd/systemd-conf/logind.conf-digi b/meta-digi-dey/recipes-core/systemd/systemd-conf/logind.conf-digi index 407116850..2bef4a0d3 100644 --- a/meta-digi-dey/recipes-core/systemd/systemd-conf/logind.conf-digi +++ b/meta-digi-dey/recipes-core/systemd/systemd-conf/logind.conf-digi @@ -1,3 +1,3 @@ [Login] -HandlePowerKey=suspend -HandlePowerKeyLongPress=poweroff +HandlePowerKey=##HANDLEPOWERKEY## +HandlePowerKeyLongPress=##HANDLEPOWERKEYLONGPRESS## diff --git a/meta-digi-dey/recipes-core/systemd/systemd-conf_%.bbappend b/meta-digi-dey/recipes-core/systemd/systemd-conf_%.bbappend index 9bb8e5ec1..b1bf0203b 100644 --- a/meta-digi-dey/recipes-core/systemd/systemd-conf_%.bbappend +++ b/meta-digi-dey/recipes-core/systemd/systemd-conf_%.bbappend @@ -20,8 +20,12 @@ do_install:append() { do_install:append:stm32mpcommon() { install -D -m0644 ${WORKDIR}/logind.conf-digi ${D}${systemd_unitdir}/logind.conf.d/01-${PN}.conf + sed -i -e 's,##HANDLEPOWERKEY##,${LOGIND_HANDLE_POWER_KEY},g' \ + -e 's,##HANDLEPOWERKEYLONGPRESS##,${LOGIND_HANDLE_POWER_KEY_LONGPRESS},g' ${D}${systemd_unitdir}/logind.conf.d/01-${PN}.conf } do_install:append:ccimx9() { install -D -m0644 ${WORKDIR}/logind.conf-digi ${D}${systemd_unitdir}/logind.conf.d/01-${PN}.conf + sed -i -e 's,##HANDLEPOWERKEY##,${LOGIND_HANDLE_POWER_KEY},g' \ + -e 's,##HANDLEPOWERKEYLONGPRESS##,${LOGIND_HANDLE_POWER_KEY_LONGPRESS},g' ${D}${systemd_unitdir}/logind.conf.d/01-${PN}.conf }