• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. _ignoring_devices:
2
3==============================================================================
4Ignoring specific devices
5==============================================================================
6
7If a device has the **LIBINPUT_IGNORE_DEVICE** udev property set to any
8value but "0", that device is not initialized by libinput.
9For a context created with **libinput_udev_create_context()**, the device is
10silently ignored and never shows up. If the device is added with
11**libinput_path_add_device()** to a context created with
12**libinput_path_create_context()**, adding the device will fail and return NULL
13(see that function's documentation for more
14information).
15
16If the property value is exactly "0", then the property is considered unset
17and libinput initializes the device normally.
18
19This property should be used for devices that are correctly detected as
20input devices (see :ref:`udev_device_type`) but that should not be used by
21libinput. It is recommended that devices that should not be handled as input
22devices at all unset the **ID_INPUT** and related properties instead. The
23**LIBINPUT_IGNORE_DEVICE** property signals that only libinput should
24ignore this property but other parts of the stack (if any) should continue
25treating this device normally.
26
27Below is an example udev rule  to assign **LIBINPUT_IGNORE_DEVICE** to the
28device with the vendor/model ID of ``012a``/``034b``. ::
29
30  $ cat /etc/udev/rules.d/99-ignore-my-device.rules
31  ACTION!="remove", KERNEL=="event[0-9]*", \
32     ENV{ID_VENDOR_ID}=="012a", \
33     ENV{ID_MODEL_ID}=="034b", \
34     ENV{LIBINPUT_IGNORE_DEVICE}="1"
35
36See :ref:`udev_config` for more details on libinput's udev properties.
37