Message ID | 20230802120201.382284-1-romain.naour@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | package/systemd: handle vconsole w/ keymap support | expand |
Romain, All, On 2023-08-02 14:02 +0200, Romain Naour spake thusly: > systemd v254 provide a new option "default-keymap" to handle vconsole > with keymap support [1]. With this change systemd now use the "us" > keymap by default and requires keytable files and keyboard utilities > from kbd package. > > The keymap support can still be disabled using -Ddefault-keymap="" > at build time. > > Handle the vconsole w/ keymap support and allow to use another > keymap than "us" by default. > > Fixes: > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561206 (TestInitSystemSystemdRwNetworkd) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561203 (TestInitSystemSystemdRwIfupdownDbusbrokerDbus) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561202 (TestInitSystemSystemdRwIfupdownDbusbroker) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561201 (TestInitSystemSystemdRwIfupdown) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561199 (TestInitSystemSystemdRwFull) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561197 (TestInitSystemSystemdRoNetworkd) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561194 (TestInitSystemSystemdRoIfupdownDbusbrokerDbus) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561190 (TestInitSystemSystemdRoIfupdownDbusbroker) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561189 (TestInitSystemSystemdRoIfupdown) > https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561186 (TestInitSystemSystemdRoFull) > > [1] https://github.com/systemd/systemd/releases/tag/v254 > [2] https://github.com/systemd/systemd-stable/commit/1cd421106893c5126e33e211cf6634e9167d1762 > > Signed-off-by: Romain Naour <romain.naour@gmail.com> > Cc: James Hilliard <james.hilliard1@gmail.com> > --- > package/systemd/Config.in | 15 +++++++++++++++ > package/systemd/systemd.mk | 6 ++++++ > 2 files changed, 21 insertions(+) > > diff --git a/package/systemd/Config.in b/package/systemd/Config.in > index bea717a456..174ee77b29 100644 > --- a/package/systemd/Config.in > +++ b/package/systemd/Config.in > @@ -569,4 +569,19 @@ config BR2_PACKAGE_SYSTEMD_VCONSOLE > > https://www.freedesktop.org/software/systemd/man/systemd-vconsole-setup.service.html > > +config BR2_PACKAGE_SYSTEMD_VCONSOLE_KEYMAP There's no need for this intermediate option, see below... > + bool "enable vconsole w/ keymap support" > + depends on BR2_PACKAGE_SYSTEMD_VCONSOLE > + select BR2_PACKAGE_KBD > + help > + systemd-vconsole-setup requires keytable files and keyboard > + utilities only if at least one keymap is used by default. > + > +config BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP > + string "vconsole default keymap" > + default "us" > + depends on BR2_PACKAGE_SYSTEMD_VCONSOLE_KEYMAP > + help > + default keymap used when populating /etc/vconsole.conf. > + > endif > diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk > index 0aa1da3fb8..f6d131c304 100644 > --- a/package/systemd/systemd.mk > +++ b/package/systemd/systemd.mk > @@ -353,6 +353,12 @@ else > SYSTEMD_CONF_OPTS += -Dvconsole=false > endif > > +ifeq ($(BR2_PACKAGE_SYSTEMD_VCONSOLE_KEYMAP),y) > +SYSTEMD_CONF_OPTS += -Ddefault-keymap=$(call qstrip,$(BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP)) > +else > +SYSTEMD_CONF_OPTS += -Ddefault-keymap="" There's nothing that prevents BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP from being empty, in which case the above sets the option to an empty string, exactly as is done if the boolean is not set. So the boolean is superfluous, and I dropped it (I moved the select to kbd to the vconsole option instead, with a condition on the keymap not being empty). This in turns simplifies the condition in the .mk file as well. Applied to master with the above changes, thanks. Regards, Yann E. MORIN. > +endif > + > ifeq ($(BR2_PACKAGE_SYSTEMD_QUOTACHECK),y) > SYSTEMD_CONF_OPTS += -Dquotacheck=true > else > -- > 2.41.0 > > _______________________________________________ > buildroot mailing list > buildroot@buildroot.org > https://lists.buildroot.org/mailman/listinfo/buildroot
diff --git a/package/systemd/Config.in b/package/systemd/Config.in index bea717a456..174ee77b29 100644 --- a/package/systemd/Config.in +++ b/package/systemd/Config.in @@ -569,4 +569,19 @@ config BR2_PACKAGE_SYSTEMD_VCONSOLE https://www.freedesktop.org/software/systemd/man/systemd-vconsole-setup.service.html +config BR2_PACKAGE_SYSTEMD_VCONSOLE_KEYMAP + bool "enable vconsole w/ keymap support" + depends on BR2_PACKAGE_SYSTEMD_VCONSOLE + select BR2_PACKAGE_KBD + help + systemd-vconsole-setup requires keytable files and keyboard + utilities only if at least one keymap is used by default. + +config BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP + string "vconsole default keymap" + default "us" + depends on BR2_PACKAGE_SYSTEMD_VCONSOLE_KEYMAP + help + default keymap used when populating /etc/vconsole.conf. + endif diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk index 0aa1da3fb8..f6d131c304 100644 --- a/package/systemd/systemd.mk +++ b/package/systemd/systemd.mk @@ -353,6 +353,12 @@ else SYSTEMD_CONF_OPTS += -Dvconsole=false endif +ifeq ($(BR2_PACKAGE_SYSTEMD_VCONSOLE_KEYMAP),y) +SYSTEMD_CONF_OPTS += -Ddefault-keymap=$(call qstrip,$(BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP)) +else +SYSTEMD_CONF_OPTS += -Ddefault-keymap="" +endif + ifeq ($(BR2_PACKAGE_SYSTEMD_QUOTACHECK),y) SYSTEMD_CONF_OPTS += -Dquotacheck=true else
systemd v254 provide a new option "default-keymap" to handle vconsole with keymap support [1]. With this change systemd now use the "us" keymap by default and requires keytable files and keyboard utilities from kbd package. The keymap support can still be disabled using -Ddefault-keymap="" at build time. Handle the vconsole w/ keymap support and allow to use another keymap than "us" by default. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561206 (TestInitSystemSystemdRwNetworkd) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561203 (TestInitSystemSystemdRwIfupdownDbusbrokerDbus) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561202 (TestInitSystemSystemdRwIfupdownDbusbroker) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561201 (TestInitSystemSystemdRwIfupdown) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561199 (TestInitSystemSystemdRwFull) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561197 (TestInitSystemSystemdRoNetworkd) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561194 (TestInitSystemSystemdRoIfupdownDbusbrokerDbus) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561190 (TestInitSystemSystemdRoIfupdownDbusbroker) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561189 (TestInitSystemSystemdRoIfupdown) https://gitlab.com/buildroot.org/buildroot/-/jobs/4768561186 (TestInitSystemSystemdRoFull) [1] https://github.com/systemd/systemd/releases/tag/v254 [2] https://github.com/systemd/systemd-stable/commit/1cd421106893c5126e33e211cf6634e9167d1762 Signed-off-by: Romain Naour <romain.naour@gmail.com> Cc: James Hilliard <james.hilliard1@gmail.com> --- package/systemd/Config.in | 15 +++++++++++++++ package/systemd/systemd.mk | 6 ++++++ 2 files changed, 21 insertions(+)