chiark / gitweb /
udev: add builtin 'keyboard' to manage key mappings
[elogind.git] / rules / 60-keyboard.rules
diff --git a/rules/60-keyboard.rules b/rules/60-keyboard.rules
new file mode 100644 (file)
index 0000000..b925853
--- /dev/null
@@ -0,0 +1,22 @@
+# do not edit this file, it will be overwritten on update
+
+ACTION!="add", GOTO="keyboard_end"
+KERNEL!="event*", GOTO="keyboard_end"
+ENV{ID_INPUT_KEY}=="", GOTO="keyboard_end"
+
+# ignore all bluetooth devices
+SUBSYSTEMS=="bluetooth", GOTO="keyboard_end"
+
+# import key mapping for USB device
+SUBSYSTEMS=="usb", IMPORT{builtin}="hwdb --subsystem=usb --lookup-prefix=keyboard:", \
+  RUN{program}+="keyboard", GOTO="keyboard_end"
+
+# import key mapping for AT keyboard from DMI data
+DRIVERS=="atkbd", IMPORT{builtin}="hwdb 'keyboard:$attr{[dmi/id]modalias}'", \
+  RUN{program}+="keyboard", GOTO="keyboard_end"
+
+# import key mapping for platform input device
+KERNELS=="input*", IMPORT{builtin}="hwdb 'keyboard:name:$attr{name}:$attr{[dmi/id]modalias}'", \
+  RUN{program}+="keyboard", GOTO="keyboard_end"
+
+LABEL="keyboard_end"