diff -up kbd-2.0.4/src/loadkeys.c.orig kbd-2.0.4/src/loadkeys.c --- kbd-2.0.4/src/loadkeys.c.orig 2017-01-11 11:14:48.308093019 +0100 +++ kbd-2.0.4/src/loadkeys.c 2017-01-11 11:15:18.018106020 +0100 @@ -27,7 +27,7 @@ #include "keymap.h" static const char *progname = NULL; -static const char *const dirpath1[] = { "", DATADIR "/" KEYMAPDIR "/**", KERNDIR "/", 0 }; +static const char *const dirpath1[] = { "", DATADIR "/" KEYMAPDIR "/**", DATADIR "/" XKBKEYMAPDIR "/", DATADIR "/" LEGACYKEYMAPDIR "/**", KERNDIR "/", 0 }; static const char *const suffixes[] = { "", ".kmap", ".map", 0 }; static void __attribute__((noreturn)) diff -up kbd-2.0.4/src/paths.h.orig kbd-2.0.4/src/paths.h --- kbd-2.0.4/src/paths.h.orig 2017-01-11 11:15:40.404115812 +0100 +++ kbd-2.0.4/src/paths.h 2017-01-11 11:15:59.730124274 +0100 @@ -5,6 +5,8 @@ * The following five subdirectories are defined: */ #define KEYMAPDIR "keymaps" +#define XKBKEYMAPDIR "keymaps/xkb" +#define LEGACYKEYMAPDIR "keymaps/legacy" #define UNIMAPDIR "unimaps" #define TRANSDIR "consoletrans" #define VIDEOMODEDIR "videomodes"