1d484ea
diff --git a/plugins/keyboard/gsd-keyboard-xkb.c b/plugins/keyboard/gsd-keyboard-xkb.c
1d484ea
index a633167..7896d85 100644
1d484ea
--- a/plugins/keyboard/gsd-keyboard-xkb.c
1d484ea
+++ b/plugins/keyboard/gsd-keyboard-xkb.c
1d484ea
@@ -152,6 +152,12 @@ apply_xkb_settings (void)
1d484ea
 
1d484ea
         gkbd_keyboard_config_load_from_x_current (&current_sys_kbd_config,
1d484ea
                                                   NULL);
1d484ea
+        /* Ignore model if using evdev, since evdev needs its own model
1d484ea
+         */
1d484ea
+        if (strcmp (initial_sys_kbd_config.model, "evdev") == 0) {
1d484ea
+                g_free (current_kbd_config.model);
1d484ea
+                current_kbd_config.model = g_strdup ("evdev");
1d484ea
+        }
1d484ea
         /* Activate - only if different! */
1d484ea
         if (!gkbd_keyboard_config_equals
1d484ea
             (&current_kbd_config, &current_sys_kbd_config)) {