diff -up kbd-2.0.1/src/loadkeys.c.orig kbd-2.0.1/src/loadkeys.c --- kbd-2.0.1/src/loadkeys.c.orig 2013-11-27 12:56:57.846069007 +0100 +++ kbd-2.0.1/src/loadkeys.c 2013-11-27 12:58:03.877302345 +0100 @@ -26,7 +26,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.1/src/paths.h.orig kbd-2.0.1/src/paths.h --- kbd-2.0.1/src/paths.h.orig 2013-11-27 12:58:10.662326108 +0100 +++ kbd-2.0.1/src/paths.h 2013-11-27 12:58:32.566403015 +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"