Опции 50-synaptics.conf не работают

23

Как Ubuntu подходит к настройкам синаптики по умолчанию? Я установил Ubuntu Netbook 10.10 на Eeepc 900. Из коробки TapButton2 был установлен на 3, а TapButton3 был на 2.

У меня есть несколько пользовательских настроек synaptics, которые я хочу использовать в качестве системных настроек по умолчанию. Прямо сейчас я использую скрипт с командами synclient, которые мне нужно запускать при каждой загрузке или пробуждении. Пита. Раньше все было в xorg.conf, которого больше нет. Я пытаюсь узнать новый способ, который, по-видимому, файлы конф /usr/share/X11/xorg.conf.d.

  1. Я отредактировал, /usr/share/X11/xorg.conf.d/50-synaptics.confчтобы выглядеть так:

    Раздел "InputClass"
         Идентификатор "тачпад"
         Драйвер "Синаптика"
         MatchIsTouchpad "вкл"
         MatchDevicePath "/ dev / input / event *"
         Опция "LockedDrags" "1"
         Опция "TapButton2" "2"
         Опция "TapButton3" "3"
    EndSection
  2. Я попытался изменить раздел тачпада /usr/share/X11/xorg.conf.d/10-evdev.conf, без сигары.

  3. Попробовал те же файлы 50-synaptics.conf и 10-evdev.conf в /etc/X11/xorg.conf.dразделе.

  4. Попробовал сделать /etc/X11/xorg.confс помощью InputClass выше. Никакой сигары.

Сначала я всегда возвращаю старое изменение, делаю новое и начинаю новую X-сессию для test ( startx -- :2). Что-то, что я нахожу интересным, это то, что после любого переключения на виртуальный терминал ( ctrl+ alt+ F1) мои настройки синапсов теряются. Значительное? Я не знаю.

Это команды synclient, которые я запускаю:

Джейк @ Клайд: ~ $ cat bin / synset.sh
#! / Bin / Баш
synclient TapButton2 = 2
synclient TapButton3 = 3
synclient LockedDrags = 1

Вот что находится в / 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

Журнал X довольно длинный, но вот некоторые результаты. Если все это было бы полезно, где хорошее место для загрузки?

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

Похоже, что это остается неразрешенным в текущем Ubuntus (12.04, 12.10).

djeikyb
источник
1
К вашему сведению, перед тем как спросить, я увидел и проследил: «Каков рекомендуемый способ настройки устройства с сенсорной панелью Synaptics?» безуспешно.
djeikyb
Извините, если мой комментарий не помог, однако вы можете попробовать вставить исключительно длинные вещи и упомянуть ссылки здесь: paste.ubuntu.com
Oxwivi
1
Вы можете загрузить весь Xorg.0.log в dpaste.de. Я сталкиваюсь с той же проблемой в maverick, не могу использовать natty из-за ошибки в беспроводной сети (отдельная проблема)
tutuca

Ответы:

22

Хорошо, давайте попробуем погрузиться в

Пользовательская конфигурация Xorg:

С осуждением HAL Xorg использует udev для обнаружения устройств. Поэтому любые определенные правила udev будут приняты во внимание при настройке XServer. Однако нет необходимости определять правила udev, так как Xorg поддерживает файлы конфигурации, фактически определение правил udev не рекомендуется.

Пользовательские файлы конфигурации следуют этому приоритету:

  • настройки из /usr/share/X11/xorg.conf.d/
  • правила udev (я не совсем уверен в приоритете udev, возможно, меньше)
  • настройки из /etc/X11/xorg.conf.d/
  • настройки в /etc/X11/xorg.conf

где старый добрый, все еще поддерживаемый xorg.confимеет высший приоритет. Поэтому любые правила, которые вы вводите, /usr/share/X11/xorg.conf.d/теряют свою силу, когда обнаруживаются другие правила с более высоким приоритетом.

Чтобы определить пользовательскую конфигурацию без файла xorg.conf, вам нужно создать папку, в которую /etc/X11/xorg.conf.d/вы поместите свои файлы конфигурации пользовательских устройств (здесь ваш 50-synaptics.conf). Однако любые другие определения в существующем файле xorg.conf будут переопределять их, поэтому вам необходимо удалить файл xorg.conf.

К сожалению, у меня нет доступа к тачпаду Synaptics и я не могу проверить, действительно ли он работает. Очень хороший учебник по настройке X можно найти (хотя и чужой) в вики Fedora Project .

Удачи.

Takkat
источник
Эхх .. Мой вопрос, почему добавление моих опций в этих местах не имеет никакого эффекта.
djeikyb
@djeikyb: не могли бы вы также проверить (из Xorg.0.log), может ли быть загружено более одного экземпляра модуля synaptics (что делает все ваши пользовательские настройки недействительными, если другой был текущим)
Takkat
Вы правы. Начните с основ, работайте. Во всяком случае, теперь вы можете увидеть часть моего журнала Xorg. Похоже, модуль синаптики загружается только один раз. Не уверен, как интерпретировать / dev / input, но это сейчас вопрос.
djeikyb
Нет. Попробовал это в 10-edev.conf и 50-synaptics.conf. Интересно, что журнал xorg показывает мои параметры, прочитанные из файла.
djeikyb
1
@djeikyp: xinput --list --longпоказать текущие устройства и настройки могут (или не могут) дать вам дополнительные советы.
Таккат
8

Я использую Ubuntu 11.04, и, очевидно, демон настроек gnome переопределяет параметры synaptics, где бы вы их ни помещали. Фактически, для опции «TapButton» значения, которые djkeikyb пытается использовать, являются значениями по умолчанию, и демон инвертирует их.

Запуск сценария с командами synclient при запуске не был возможен из-за виртуального терминала, описанного djkeikyb, а также из-за того, что каждый раз, когда я подключал / отключал USB-мышь, значения также сбрасывались.

Я решил отключить демон настроек для свойств мыши / сенсорной панели. В терминале типа:

gconf-editor

Затем перейдите в приложения> gnome_settings_daemon> плагины> мышь и отклоните активную опцию. Конечно, побочный эффект - невозможность редактировать свойства мыши в разделе «Система»> «Установки»> «Мышь».

anthomas8
источник
2
Интересный. К сожалению, я считаю, что это ошибка верхнего уровня (хотя я был слишком ленив и занят, чтобы написать правильный отчет). Я сталкиваюсь с этой проблемой при использовании Arch Linux без следов gnome. Тем не менее , с помощью этого метода вы можете сохранить ваши настройки Xorg?
djikyb
1
Да. Я добавил «Option» в файл /usr/share/X11/xorg.conf.d/50-synaptics.conf (самый низкий приоритет согласно Takkat, верно?), И он работает правильно.
anthomas8
9
Вдохновленный этим ответом, я нашел похожее решение. Беги dconf-editor( apt-get installесли надо), иди org.gnome.settings-daemon.plugins.mouse, сними галочку active. Я подтверждаю, что это решение позволило мне /etc/X11/xorg.conf.d/50-synaptics.confсоблюдать мои настройки в бета-версии Ubuntu 12.04. @djeikyb, вы должны пометить этот ответ как принятый, потому что он единственный, который действительно решает проблему.
Никита Волков
1
@mojojojo Я установлю последнюю версию Ubuntu и попробую, как только у меня будет свободная минутка. Выглядит многообещающе.
djeikyb
3
У меня работает на Debian 8 Джесси
аааааа
2

На данный момент это выглядит как ошибка. Я перейду к списку рассылки synaptic и xorg и сообщу об ошибке. Это мой неудовлетворительный ответ: /

Хотя у меня еще не было возможности протестировать свои параметры в Ubuntu 11.04, synaptics и xorg также не работают должным образом в обновленной версии (Чт 2 июня 03:09:43 PDT 2011). Установка Arch. Таким образом, это, похоже, ошибка восходящего потока, а не Ubuntu.

djeikyb
источник
Ошибка все еще присутствует в 13.04
пачка
1

Использование 11.04 обновлено в серии с 9.04 или около того, если это имеет значение. Удев не работал, используя/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"

synclient не показал изменений в настройках после перезагрузки. xorg.conf.d работал, с/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

перезапуск X показал изменения с помощью synclient.

gpointing-device-settings было также упомянуто где-то в качестве решения.

Misaki
источник
Что на самом деле работает для вас? Вы можете уточнить? Похоже, вы говорите, что редактирование файлов xorg.conf.d решило вашу проблему, но это определенно не для меня под 10.10 Ubuntu.
djikyb
0

Не уверен, если это поможет, но если вы сохраните его как xorg.conf, он должен работать

robin0800
источник
5
xorg.conf устарела. Если возможно, я хотел бы сделать это Правильный путь. Кроме того, я только что разделил этот раздел на пустую /etc/X11/xorg.conf, а не сигару.
djeikyb
0

делает

Option "SHMConfig" "on"

все еще применяется? По крайней мере, у меня все еще есть в моем старом configfile. Разве это не повредит, вставив это, не так ли?

Марто
источник
Я использую synclient без этой опции. Если я понимаю: если это требуется, он должен быть включен для любой синаптической конфигурации. Таким образом, опция не является полезной. Правильный? Кстати, это не влияет на мою текущую установку Arch, которая имеет ту же проблему. Надеюсь, я смогу получить двойную загрузку Ubuntu на этом нетбуке, чтобы я мог правильно ответить на вопрос здесь, в askubuntu :)
djeikyb
по-видимому, shmconfig проходит через HAL, который больше не используется. или что-то ..
Marto
В этом есть смысл. Текущая текущая схема обнаружения оборудования представляет собой смесь udev и dbus. Я не могу не думать, что это проблема udev по своей сути, тем более, что мои параметры синхронизации сбрасываются при таких событиях acpi, как спящий режим.
djeikyb