Le opzioni 50-synaptics.conf non funzionano


23

In che modo Ubuntu presenta le impostazioni predefinite di Synaptics? Ubuntu Netbook 10.10 è installato su un Eeepc 900. TapButton2 è stato impostato su 3 e TapButton3 su 2.

Ho diverse impostazioni di sinapsi personalizzate che desidero come valori predefiniti a livello di sistema. In questo momento uso uno script con i comandi di sincronizzazione che devo eseguire ad ogni avvio o riattivazione. Pita. In passato era tutto andato in xorg.conf..che non esiste più. Sto cercando di imparare il nuovo modo, che è apparentemente file conf a /usr/share/X11/xorg.conf.d.

  1. Ho modificato /usr/share/X11/xorg.conf.d/50-synaptics.confper assomigliare a:

    Sezione "InputClass"
         Identificatore "touchpad catchall"
         Driver "synaptics"
         MatchIsTouchpad "on"
         MatchDevicePath "/ dev / input / event *"
         Opzione "LockedDrags" "1"
         Opzione "TapButton2" "2"
         Opzione "TapButton3" "3"
    EndSection
  2. Ho provato a modificare la sezione del touchpad di /usr/share/X11/xorg.conf.d/10-evdev.conf, nessun sigaro.

  3. Ho provato gli stessi file 50-synaptics.conf e 10-evdev.conf in una /etc/X11/xorg.conf.dsezione.

  4. /etc/X11/xorg.confHo provato a fare un con la sezione InputClass sopra. Nessun sigaro

Ripristino sempre prima la vecchia modifica, ne eseguo una nuova e avvio una nuova sessione X per test ( startx -- :2). Qualcosa che trovo interessante è che dopo ogni passaggio al terminale virtuale ( ctrl+ alt+ F1) le mie impostazioni di synaptics vengono perse. Significativo? Non lo so.

Questi sono i comandi di sincronizzazione che eseguo:

jake @ clyde: ~ $ cat bin / synset.sh
#! / Bin / bash
TapButton2 sincrono = 2
TapButton3 sincrono = 3
synclient LockedDrags = 1

Ecco cosa c'è in / dev / input:

jake@clyde:/dev/input$ ls
by-path/  event0  event1  event2  event3  event4  event5  event6  event7  mice  mouse0
jake@clyde:/dev/input$ ls -l by-path/
total 0
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-eeepc-event -> ../event6
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-i8042-serio-0-event-kbd -> ../event4
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-i8042-serio-1-event-mouse -> ../event7
lrwxrwxrwx 1 root root 9 2011-02-18 15:43 platform-i8042-serio-1-mouse -> ../mouse0

Il registro X è piuttosto lungo, ma ecco un po 'di output. Se il tutto fosse utile, dov'è un buon posto per caricarlo?

jake@clyde:/var/log$ egrep "synaptics|touchpad" Xorg.0.log
[    16.707] (II) config/udev: Adding input device ETPS/2 Elantech Touchpad (/dev/input/event7)
[    16.707] (**) ETPS/2 Elantech Touchpad: Applying InputClass "evdev touchpad catchall"
[    16.707] (**) ETPS/2 Elantech Touchpad: Applying InputClass "touchpad catchall"
[    16.707] (II) LoadModule: "synaptics"
[    16.707] (II) Loading /usr/lib/xorg/modules/input/synaptics_drv.so
[    16.707] (II) Module synaptics: vendor="X.Org Foundation"
[    16.708] (II) Synaptics touchpad driver version 1.2.2
[    16.708] (II) ETPS/2 Elantech Touchpad: x-axis range 8 - 1144
[    16.708] (II) ETPS/2 Elantech Touchpad: y-axis range 8 - 760
[    16.708] (II) ETPS/2 Elantech Touchpad: device does not report pressure, will use touch data.
[    16.708] (II) ETPS/2 Elantech Touchpad: finger width range 0 - 0
[    16.708] (II) ETPS/2 Elantech Touchpad: buttons: left right double triple
[    16.708] (--) ETPS/2 Elantech Touchpad: touchpad found
[    16.708] (**) ETPS/2 Elantech Touchpad: always reports core events
[    16.708] (II) XINPUT: Adding extended input device "ETPS/2 Elantech Touchpad" (type: TOUCHPAD)
[    16.708] (**) ETPS/2 Elantech Touchpad: (accel) keeping acceleration scheme 1
[    16.709] (**) ETPS/2 Elantech Touchpad: (accel) acceleration profile 0
[    16.709] (**) ETPS/2 Elantech Touchpad: (accel) acceleration factor: 2.000
[    16.709] (**) ETPS/2 Elantech Touchpad: (accel) acceleration threshold: 4
[    16.709] (--) ETPS/2 Elantech Touchpad: touchpad found
[    16.710] (II) config/udev: Adding input device ETPS/2 Elantech Touchpad (/dev/input/mouse0)
[ 15516.377] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44215.009] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44358.733] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44414.761] (--) ETPS/2 Elantech Touchpad: touchpad found
[ 44515.817] (--) ETPS/2 Elantech Touchpad: touchpad found

Sembra che questo rimanga irrisolto nell'attuale Ubuntus (12.04, 12.10).


1
Cordiali saluti, prima di chiedere, ho visto e seguito "Qual è il modo consigliato per configurare un dispositivo touchpad Synaptics?" senza successo.
djeikyb,

Scusa se il mio commento non aiuta, tuttavia puoi provare a incollare cose eccezionalmente lunghe e menzionare i link qui: paste.ubuntu.com
Oxwivi

1
puoi caricare l'intero Xorg.0.log in dpaste.de Sto riscontrando lo stesso problema in Maverick, non posso usare natty a causa di un bug wireless (problema separato)
tutuca

Risposte:


22

Ok, proviamo ad immergerci

Configurazione personalizzata Xorg:

Con deprecazione di HAL Xorg utilizza udev per il rilevamento dei dispositivi. Pertanto, qualsiasi regola udev definita verrà presa in considerazione quando si tratta di configurare XServer. Tuttavia non è necessario definire le regole udev poiché Xorg supporta i file di configurazione, infatti la definizione delle regole udev non è gradita.

I file di configurazione personalizzati seguono questa priorità:

  • impostazioni da /usr/share/X11/xorg.conf.d/
  • regole udev (non sono del tutto sicuro della priorità udev, forse meno)
  • impostazioni da /etc/X11/xorg.conf.d/
  • impostazioni in /etc/X11/xorg.conf

dove il buon vecchio, ancora supportato xorg.confha la massima priorità. Pertanto, tutte le regole messe in /usr/share/X11/xorg.conf.d/sospeso sono valide quando vengono rilevate altre regole con una priorità più elevata.

Per definire una configurazione personalizzata senza il file xorg.conf è necessario creare una cartella in /etc/X11/xorg.conf.d/cui inserire i file di configurazione del dispositivo personalizzato (qui 50-synaptics.conf). Tuttavia, qualsiasi altra definizione in un file xorg.conf esistente avrà la precedenza su di essi, pertanto è necessario rimuovere il file xorg.conf.

Purtroppo non ho accesso a un touchpad Synaptics e non posso verificare se funziona davvero. Un ottimo tutorial su come configurare X può essere trovato (anche se alieno) nel Wiki di Fedora Project .

In bocca al lupo.


Eheh..La mia domanda è perché aggiungere le mie opzioni in queste posizioni non ha alcun effetto.
djeikyb,

@djeikyb: puoi anche controllare (da Xorg.0.log) se potrebbe esserci più di un'istanza del modulo synaptics caricata (che annulla tutte le tue impostazioni personalizzate se l'altra era attuale)
Takkat

Hai ragione. Inizia dalle basi, allenati. Ad ogni modo, puoi vedere parte del mio registro Xorg ora. Sembra che il modulo synaptics sia caricato solo una volta. Non sono sicuro di come interpretare / dev / input, ma ora è nella domanda.
djeikyb,

No. Provato in 10-edev.conf e 50-synaptics.conf. È interessante notare che il registro xorg mostra le mie opzioni lette dal file.
djeikyb,

1
@djeikyp: xinput --list --longmostrare i dispositivi e le impostazioni correnti può (o meno) darti ulteriori suggerimenti.
Takkat,

8

Sto usando Ubuntu 11.04 e apparentemente il demone delle impostazioni di gnome è quello che sovrascrive le opzioni di synaptics ovunque le metti. In effetti, per l'opzione "TapButton", i valori che djkeikyb sta tentando di usare sono quelli predefiniti e il demone li inverte.

L'esecuzione di uno script con i comandi synclient all'avvio non era un'opzione, a causa della cosa del terminale virtuale descritta da djkeikyb e anche perché ogni volta che collegavo / disconnettevo il mio mouse USB, i valori venivano anche ripristinati.

Ho deciso di disabilitare il demone delle impostazioni per le proprietà del mouse / touchpad. In un tipo di terminale:

gconf-editor

Quindi vai su app> gnome_settings_daemon> plug-in> mouse e disattiva l'opzione attiva. Naturalmente, l'effetto collaterale non è in grado di modificare le proprietà del mouse in Sistema> Preferenze> Mouse


2
Interessante. Sfortunatamente, credo che questo sia un bug a monte (anche se sono stato troppo pigro e impegnato per scrivere un rapporto adeguato). Ho riscontrato questo problema usando Arch Linux con nary una traccia di gnome. Tuttavia , con questo metodo riesci a rispettare le tue impostazioni di Xorg?
djeikyb,

1
Sì. Ho inserito una "Opzione" nel file /usr/share/X11/xorg.conf.d/50-synaptics.conf (priorità più bassa secondo Takkat, giusto?) E funziona correttamente.
anthomas8

9
Ispirato da questa risposta ho trovato una soluzione simile. Esegui dconf-editor( apt-get installse necessario), vai a org.gnome.settings-daemon.plugins.mouse, deseleziona active. Confermo che questa soluzione mi ha permesso di /etc/X11/xorg.conf.d/50-synaptics.confrispettare le mie impostazioni in Ubuntu 12.04 beta. @djeikyb, dovresti contrassegnare questa risposta come accettata, perché è l'unica che risolve effettivamente il problema.
Nikita Volkov,

1
@mojojojo Installerò l'ultimo Ubuntu e lo proverò una volta che avrò un minuto libero. Sembra promettente.
djeikyb,

3
Funziona per me su Debian 8 Jessie
aaaaaa il

2

A questo punto sembra un bug. Vado avanti chiedendo in giro le mailing list di synaptic e xorg e compilando una segnalazione di bug. Questa è la mia risposta insoddisfacente: /

Anche se non ho ancora avuto l'opportunità di testare le mie opzioni in Ubuntu 11.04, anche synaptics e xorg non funzionano come previsto in una versione aggiornata di Arch (gio 2 giu 03:09:43 PDT 2011). Pertanto, sembra essere un bug a monte, non specificamente Ubuntu.


Bug è ancora presente nel 13.04
tutuca

1

Utilizzando 11.04 aggiornato in serie da 9.04 o giù di lì se è importante. udev non ha funzionato, usando/etc/udev/rules.d/99-touchpad-borders.rules

ACTION!="add|change", GOTO="xorg_synaptics_end"
KERNEL!="event*", GOTO="xorg_synaptics_end"

ENV{ID_INPUT_TOUCHPAD}!="1", GOTO="xorg_synaptics_end"

# synclient for settings

ENV{x11_options.RightEdge}="5200"
ENV{x11_options.LeftEdge}="1744"
ENV{x11_options.TopEdge}="2000"
ENV{x11_options.BottomEdge}="4256"

LABEL="xorg_synaptics_end"

il synclient non ha mostrato alcun cambiamento nelle impostazioni dopo il riavvio. xorg.conf.d ha funzionato, con/usr/share/X11/xorg.conf.d/55-touchpad-border.conf

Section "InputClass"
        Identifier "touchpad border config"
        MatchIsTouchpad "on"
        Driver "synaptics"
        Option "RightEdge" "5200"
        Option "LeftEdge" "1744"
        Option "TopEdge" "2000"
        Option "BottomEdge""4256"
EndSection

il riavvio di X ha mostrato le modifiche con synclient.

gpointing-device-settings è stato anche menzionato da qualche parte come soluzione.


Cosa ha funzionato davvero per te? Puoi chiarire? Sembra che tu stia dicendo che la modifica dei file xorg.conf.d ha risolto il tuo problema, ma sicuramente non ha funzionato per me sotto Ubuntu 10.10.
djeikyb,

0

Non sono sicuro che sia d'aiuto, ma se lo salvi come xorg.conf dovrebbe funzionare


5
xorg.conf è obsoleto. Se possibile, mi piacerebbe farlo nel modo giusto. Inoltre, ho appena catturato quella sezione in un altrimenti vuoto /etc/X11/xorg.conf, e senza sigaro.
djeikyb,

0

fa

Option "SHMConfig" "on"

ancora applicare? Almeno ce l'ho ancora nel mio vecchio file di configurazione. Non potrebbe far male metterlo dentro, vero?


Uso synclient senza questa opzione. Se ho capito: se è necessario, deve essere attivo per qualsiasi configurazione sinaptica. Pertanto l'opzione non è utile. Corretta? Per inciso, questo non ha alcun effetto sulla mia attuale installazione di Arch che ha lo stesso problema. Spero di ottenere Ubuntu con doppio avvio su questo netbook in modo da poter mantenere correttamente la domanda qui su askubuntu :)
djeikyb,

apparentemente, shmconfig passa attraverso HAL, che non viene più utilizzato. o qualcosa del genere ..
marto

Ciò ha senso. L'attuale schema di rilevamento hardware è un miscuglio di udev e dbus. Non posso fare a meno di pensare che questo sia un problema udev al suo interno, soprattutto dal momento che le mie impostazioni del synclient sono ripristinate su eventi acpi come l'ibernazione.
djeikyb,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.