libinput supports some static configuration through udev properties.
These propertiesare read when the device is initially added to libinput's device list, i.e. before the LIBINPUT_EVENT_DEVICE_ADDED event is generated.
The following udev properties are supported:
- LIBINPUT_CALIBRATION_MATRIX
- Sets the calibration matrix, see libinput_device_config_calibration_get_default_matrix(). If unset, defaults to the identity matrix.
- ID_SEAT
- Assigns the physical seat for this device. See libinput_seat_get_physical_name(). Defaults to "seat0".
- WL_SEAT
- Assigns the logical seat for this device. See libinput_seat_get_logical_name() context. Defaults to "default".
- MOUSE_DPI
- HW resolution and sampling frequency of a relative pointer device. See Normalization of relative motion for details.
- MOUSE_WHEEL_CLICK_ANGLE
- The angle in degrees for each click on a mouse wheel. See libinput_pointer_get_axis_source() for details.
Below is an example udev rule to assign "seat1" to a device from vendor 0x012a with the model ID of 0x034b.
ACTION=="add|change", KERNEL=="event[0-9]*", ENV{ID_VENDOR_ID}=="012a", \
ENV{ID_MODEL_ID}=="034b", ENV{ID_SEAT}="seat1"