From 6bf4cd485735ecff5c0ccfb6b36bf1b2f310997a Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Tue, 14 Jun 2022 09:12:00 +0900 Subject: [PATCH] test: install libxkbcommon and x11 keymaps (cherry picked from commit 1136175c7fd4898c6fdc59c1f729386cf994265c) Related: #2087652 --- test/test-functions | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/test/test-functions b/test/test-functions index 050fefaf1b..644c3a8613 100644 --- a/test/test-functions +++ b/test/test-functions @@ -685,6 +685,7 @@ setup_basic_environment() { install_dbus install_fonts install_keymaps + install_x11_keymaps install_terminfo install_execs install_fs_tools @@ -1198,7 +1199,7 @@ install_missing_libraries() { local lib path # A number of dependencies is now optional via dlopen, so the install # script will not pick them up, since it looks at linkage. - for lib in libcryptsetup libidn libidn2 pwquality libqrencode tss2-esys tss2-rc tss2-mu tss2-tcti-device libfido2 libbpf libelf libdw; do + for lib in libcryptsetup libidn libidn2 pwquality libqrencode tss2-esys tss2-rc tss2-mu tss2-tcti-device libfido2 libbpf libelf libdw xkbcommon; do ddebug "Searching for $lib via pkg-config" if pkg-config --exists "$lib"; then path="$(pkg-config --variable=libdir "$lib")" @@ -1214,6 +1215,10 @@ install_missing_libraries() { # (eg: libcryptsetup), so just ignore them inst_libs "${path}/${lib}.so" || true inst_library "${path}/${lib}.so" || true + + if [[ "$lib" == "libxkbcommon" ]]; then + install_x11_keymaps full + fi else ddebug "$lib.pc not found, skipping" continue @@ -1889,6 +1894,18 @@ install_keymaps() { fi } +install_x11_keymaps() { + dinfo "Install x11 keymaps" + + if (( $# == 0 )); then + # Install only keymap list. + inst /usr/share/X11/xkb/rules/base.lst + else + # When it takes any argument, then install all keymaps. + inst_recursive /usr/share/X11/xkb + fi +} + install_zoneinfo() { dinfo "Install time zones" inst_any /usr/share/zoneinfo/Asia/Seoul