# do not edit this file, it will be overwritten on update # ID_INTEGRATION variable tells us if a device is internal (inherent part of the system) or external otherwise. # This must be loaded after 60-persistent-*.rules to have ID_BUS. ACTION=="remove", GOTO="integration_end" ENV{ID_BUS}=="", GOTO="integration_end" # ACPI, platform, PS/2, I2C, RMI, SPI and PCI devices: Internal by default. ENV{ID_BUS}=="acpi|platform|i8042|i2c|rmi|spi|pci", ENV{ID_INTEGRATION}="internal" # Bluetooth devices: External by default. ENV{ID_BUS}=="bluetooth", ENV{ID_INTEGRATION}="external" # USB devices: Internal if it's connected to a fixed port, external to a removable or unknown. ENV{ID_BUS}=="usb", DRIVERS=="usb", ATTRS{maxchild}=="0", ATTRS{removable}=="fixed", ENV{ID_INTEGRATION}="internal" ENV{ID_BUS}=="usb", DRIVERS=="usb", ATTRS{maxchild}=="0", ATTRS{removable}=="removable|unknown", ENV{ID_INTEGRATION}="external" # libinput compatibility variables, must be loaded before 70-(joystick|touchpad).rules to allow hwdb quirks to override. ENV{ID_INPUT}=="", GOTO="integration_libinput_end" ENV{ID_INPUT_JOYSTICK}=="1", ENV{ID_INPUT_JOYSTICK_INTEGRATION}="$env{ID_INTEGRATION}" ENV{ID_INPUT_TOUCHPAD}=="1", ENV{ID_INPUT_TOUCHPAD_INTEGRATION}="$env{ID_INTEGRATION}" LABEL="integration_libinput_end" LABEL="integration_end"