Nome do Produto do Dispositivo (Modelo)
Obtenha o nome do produto do dispositivo xinput (ou modelo ) usando xinput list
. Exemplo de saída pode ser algo como isto:
# xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ELAN Touchscreen id=10 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
⎜ ↳ Logitech Unifying Device. Wireless id=16 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
Na saída acima, o modelo ou nome do produto para o dispositivo Touchscreen é "ELAN Touchscreen".
Caminho do dispositivo (nó)
Para obter o nome do fornecedor do dispositivo de xinput (ou fabricante ), precisamos conhecer o caminho do dispositivo (também chamado Nó do dispositivo) para consultar e, em seguida, perguntar udevadm info
. Você pode obter o caminho listando as propriedades xinput de um dispositivo e encontrando o valor 'Device Node'.
Em nosso exemplo anterior, o valor do Nó do dispositivo para a tela sensível ao toque, que diz ter id=10
, pode ser encontrado assim:
# xinput list-props 10 | grep 'Device Node'
Device Node (253): "/dev/input/event9"
Nome do fornecedor do dispositivo (fabricante)
Agora podemos obter o nome do fornecedor do dispositivo de xinput (ou fabricante ) observando o valor da propriedade VENDOR
retornada por udevadm info
para o dispositivo com o nome do caminho encontrado acima:
# udevadm info --query=property --name=/dev/input/event9 | grep 'VENDOR='
ID_VENDOR=ELAN
Na saída acima, o nome do fabricante ou fornecedor da tela sensível ao toque seria "ELAN".
Configuração do XOrg
Juntando tudo, podemos criar um novo InputClass Seção para corresponder a fornecedores de dispositivos, produtos ou caminhos específicos. Usando nossos exemplos anteriores, esta seção corresponde a qualquer Produto Touchscreen fabricado pelo Fornecedor da ELAN:
Section "InputClass"
Identifier "elan touchscreen catchall"
MatchDevicePath "/dev/input/event*"
MatchProduct "Touchscreen"
MatchVendor "ELAN"
EndSection
Graças a @ Stéphane , @ Daniel e @ ManuelSchneid3r