summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2023-08-10 15:12:15 +0200
committerYu Watanabe <watanabe.yu+github@gmail.com>2023-08-10 21:17:57 +0200
commitbf77d59772722e96508df91bd24e1b6940b3edfb (patch)
tree4009ab2c0f25aa7183bc7360e4361e491e2e6ff5
parentMerge pull request #28760 from poettering/coredump-tweaks (diff)
downloadsystemd-bf77d59772722e96508df91bd24e1b6940b3edfb.tar.xz
systemd-bf77d59772722e96508df91bd24e1b6940b3edfb.zip
vconsole-setup: use "@kernel" rather than "kernel" as special string to leave keymap untouched
This is a magic string, and we should avoid stepping into the territory of normal keymap names with that, given that users can pick names otherwise freely. Hence, prefix the name with a special char to avoid any namespace issues. Follow-up for: #28660
-rw-r--r--man/vconsole.conf.xml8
-rw-r--r--meson.build4
-rw-r--r--src/vconsole/vconsole-setup.c2
3 files changed, 7 insertions, 7 deletions
diff --git a/man/vconsole.conf.xml b/man/vconsole.conf.xml
index 667105109b..eb1f20d224 100644
--- a/man/vconsole.conf.xml
+++ b/man/vconsole.conf.xml
@@ -74,10 +74,10 @@
<term><varname>KEYMAP=</varname></term>
<term><varname>KEYMAP_TOGGLE=</varname></term>
- <listitem><para>Configures the key mapping table for the keyboard.
- <varname>KEYMAP=</varname> defaults to <literal>&DEFAULT_KEYMAP;</literal> if not set. Specially,
- if <literal>kernel</literal> is specified, no keymap will be loaded, i.e. the kernel keymap is used.
- The <varname>KEYMAP_TOGGLE=</varname> can be used to configure a second toggle keymap and is by default
+ <listitem><para>Configures the key mapping table for the keyboard. <varname>KEYMAP=</varname>
+ defaults to <literal>&DEFAULT_KEYMAP;</literal> if not set. Specially, if <literal>@kernel</literal>
+ is specified, no keymap will be loaded, i.e. the kernel's default keymap is used. The
+ <varname>KEYMAP_TOGGLE=</varname> can be used to configure a second toggle keymap and is by default
unset.</para></listitem>
</varlistentry>
diff --git a/meson.build b/meson.build
index f37aa0aca5..8f7da1ec6e 100644
--- a/meson.build
+++ b/meson.build
@@ -947,9 +947,9 @@ conf.set_quoted('SYSTEMD_NSPAWN_LOCALE', nspawn_locale)
default_keymap = get_option('default-keymap')
if default_keymap == ''
- # We canonicalize empty keymap to 'kernel', as it makes the default value
+ # We canonicalize empty keymap to '@kernel', as it makes the default value
# in the factory provided /etc/vconsole.conf more obvious.
- default_keymap = 'kernel'
+ default_keymap = '@kernel'
endif
conf.set_quoted('SYSTEMD_DEFAULT_KEYMAP', default_keymap)
diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
index 73fc0f22da..17b0f9abfa 100644
--- a/src/vconsole/vconsole-setup.c
+++ b/src/vconsole/vconsole-setup.c
@@ -282,7 +282,7 @@ static int keyboard_load_and_wait(const char *vc, Context *c, bool utf8) {
map_toggle = context_get_config(c, VC_KEYMAP_TOGGLE);
/* An empty map means kernel map */
- if (isempty(map) || streq(map, "kernel"))
+ if (isempty(map) || streq(map, "@kernel"))
return 0;
args[i++] = KBD_LOADKEYS;