BR Indice() VersioniSupportate(hardy)
Introduzione
evdev è un modulo per la gestione generica delle periferiche di input di X. Consente la gestione di qualsiasi tipo di periferica di input e utilizza direttamente dei file descrittori come /dev/input/event*, permettendo un'accesso più diretto alle periferiche; è così possibile sfruttare maggiormente queste, senza subire le limitazioni imposte dall'accesso tramite gli altri file come /dev/input/mouse*, /dev/input/kbd* o /dev/input/js*.
Preparativi
Aprire il file /etc/apt/sources.list con un [:Ufficio/EditorDiTesto:editor di testo] ed i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] e aggiungere le seguenti righe:
deb http://ppa.launchpad.net/xorg-edgers/ubuntu hardy main deb-src http://ppa.launchpad.net/xorg-edgers/ubuntu hardy main
Per aggiornare la lista dei pacchetti e installare la versione aggiornata di xserver-xorg-input-evdev è sufficiente digitare i seguenti comandi in una finestra di terminale:
sudo apt-get update sudo apt-get upgrade
Identificazione del file descrittore
Per una configurazione di base della periferica, è sufficiente conoscere il suo file descrittore; digitare il seguente comando in una finestra di terminale:
sudo ls -l /dev/input/by-id/ | grep event
Per esempio, se si desidera configurare una periferica di imput, nel risultato del comando precedente potrebbe essere presente una riga simile alla seguente:
lrwxrwxrwx 1 root root 9 2008-09-16 12:14 usb-Logitech_Logitech_BT_Mini-Receiver_000761AEA7CD-event-mouse -> ../event2
In questo caso, il file descrittore sarà /dev/input/by-id/usb-Logitech_Logitech_BT_Mini-Receiver_000761AEA7CD-event-mouse.
Per verificare la correttezza delle informazioni ottenute dal precedente comando, è utile digitare il seguente comando in una finestra di terminale:
sudo less -f /dev/input/by-id/nome_file
Sostituire la dicitura «nome_file» com il nome del file identificato in precedenza.
Identificazione delle periferiche di gioco
Alcune periferiche non permettono l'identificazione tramite l'ID, quindi si deve utilizzare quella per percorso; digitare il seguente comando in una finestra di terminale:
sudo ls -l /dev/input/by-path/ | grep event
Un esempio di queste periferiche sono i joystick su gameport0 e nel risultato del precedente comando sarà presente una riga simile alla seguente:
lrwxrwxrwx 1 root root 9 2008-09-16 12:13 pci-gameport0--event-joystick -> ../event6
In questo caso il file descrittore è /dev/input/by-path/pci-gameport0--event-joystick.
Per verificare la correttezza delle informazioni ottenute dal precedente comando, è utile digitare il seguente comando in una finestra di terminale:
sudo less -f /dev/input/by-path/nome_file
Sostituire la dicitura «nome_file» com il nome del file identificato in precedenza.
Quando si identificano le periferiche per percorso, è utile notare che queste cambieranno file ogni volta che verrà fisicamente cambiata la porta a cui vengono connesse. |
Se muovendo la periferica o premendo i tasti su di essa compaiono caratteri non leggibili sul terminale allora il file è stato identificato correttamente, altrimenti tale file non è quello corretto o viene già utilizzato da evdev.
Configurazione del server grafico
Configurazione di base
Una volta identificato correttamente il file, è necessario configurare X.
Se si sta configurando un mouse, una tastiera o un'altra periferica già in uso, bisogna come prima cosa eliminare i riferimenti a questa periferica già presenti. Aprire il file /etc/X11/xorg.conf con un [:Ufficio/EditorDiTesto:editor di testo] e con i [:AmministrazioneSistema/Sudo:privilegi di amministrazione], controllare nella sezione «ServerLayout» e commentare tutte le righe che si riferiscono a tale periferica aggiungendo il carattere «#» all'inizio della riga. Sempre all'interno di questa sezione aggiungere una nuova riga, in modo che assuma il seguente aspetto:
Section "ServerLayout"
...
# InputDevice "Mouse0" "CorePointer"
InputDevice "MouseEvent0" "CorePointer"
InputDevice "KeyboardEvent0" "CoreKeyboard"
InputDevice "JoystickEvent0"
...
EndSectionPer i mouse è bene aggiungere la stringa «CorePointer» e per le tastiere «CoreKeyboard».
Il testo riportato sopra è solo esemplificativo, non è necessario usare tutte le periferiche di input con il modulo in questione. |
Ora è necessario aggiungere una sezione per questa periferica; in fondo al file aggiungere delle righe simili alle seguenti:
Section "InputDevice"
Identifier "Identificativo"
Driver "evdev"
Option "Path" "/dev/input/by-id/nome_file"
EndSectionLa dicitura «Identificativo» deve essere sostituita con l'identificativo aggiunto nella sezione «ServerLayout» (per esempio «KeyboardEvent0») mantenendo le virgolette, e «nome_file» con il nome del file descrittore identificato in precedenza.
Configurazione avanzata
L'attuale versione di evdev supporta poche opzioni native, in compenso supporta anche tutte le opzioni di tutti gli altri moduli di input, ad esempio se si sta configurando una tastiera con evdev, per avere la configurazione italiana, inserire sella sezione InputDevice anche una riga che reciti
Option "XkbLayout" "it"
come se si stesse configurando la tastiera con il modulo kbd.
Per avere un elenco di tutte le opzioni utilizzabili consultare i manuali dei moduli per l'input, come
man evdev man joystick man kdb man mousedrv man synaptics man wacom
a seconda del tipo di periferica che si sta configurando.
