[Решено] Отключение тачпада при подключении мыши.

Автор fry, 11 февраля 2013, 11:52:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

fry

Захотел я себе сделать автоматическое отключение тачпада при подключении мыши. Погуглил немного и нашел пару вариантов. Один предлагает
Открыть содержимое (спойлер)
/etc/udev/rules.d/99-touchpad.rules

ENV{ID_CLASS}=="mouse", RUN+="/etc/udev/scripts/touchpad.sh"

/etc/udev/scripts/touchpad.sh

#!/bin/sh
if [ "$ACTION" == "add" ] ; then
    synclient TouchpadOff=1
    # Раскомментировать для ноутбуков ASUS (погасить индикатор)
    #echo 0 > /proc/acpi/asus/tled
elif [ "$ACTION" == "remove" ] ; then
    synclient TouchpadOff=0
    # Раскомментировать для ноутбуков ASUS (зажечь индикатор)
    #echo 1 > /proc/acpi/asus/tled
fi
[свернуть]
Второй вариант
Открыть содержимое (спойлер)
ACTION=="add", SUBSYSTEM=="input", ID_CLASS="mouse", RUN+="/usr/bin/synclient TouchpadOff=1"
ACTION=="remove", SUBSYSTEM=="input", ID_CLASS="mouse", RUN+="/usr/bin/synclient TouchpadOff=0"
[свернуть]
в /etc/udev/rules.d/01-touchpad.rules.
Работать отказываются оба варианта. В процессе исследований выяснилось, что
# synclient TouchpadOff=1
No protocol specified
No protocol specified
Failed to connect to X Server.
так что первый вариант мне кажется очень сомнительным. Так как же мне запилить сию опцию?
Товарищи призывники! Надо понимать всю глубину наших глубин!

Руководство по добавлению изображений на форум

qupl

fry,  добейтесь чтобы просто из консоли работало. Оба варианта одинаковы , только в первом все в скрипт завернуто.

fry

Цитата: qupl от 11 февраля 2013, 12:08:00
fry,  добейтесь чтобы просто из консоли работало. Оба варианта одинаковы , только в первом все в скрипт завернуто.
Из консоли работает. При запуске от пользователя, от которого иксы запущены. Но ведь в первом варианте скрипты от рута работают. А результат выполнения от рута я привел ниже.
Товарищи призывники! Надо понимать всю глубину наших глубин!

Руководство по добавлению изображений на форум

Malaheenee

Кстати, у нас одно время "иксы" даже запускаться не хотели, пока мы не сделали ссылку:
# ln -s /usr/bin/Xorg /usr/bin/X
Может, тут та же самая собака зарыта?
Все мы где-то, когда-то и в чем-то были новичками.

fry

Тут отдельный файл лежит.
$ ls -l /usr/bin/ | grep X
-rwsr-sr-x 1 root   root        9524 янв.   3 20:24 X
lrwxrwxrwx 1 root   root           1 дек.  16 03:50 X11 -> .
-rwxr-xr-x 1 root   root     2073152 янв.  17 03:07 Xorg
Товарищи призывники! Надо понимать всю глубину наших глубин!

Руководство по добавлению изображений на форум

qupl

fry,  в начало скрипта, во вторую строчку, из варианта №1 пропишите
export DISPLAY=:0

Malaheenee

Гугление на аглицком говорит, что народ наступал на те же грабли и что udev вроде как работает вне иксов (такое чувство, что глупость сморозили).
Советуют прописать для рута переменную DISPLAY=:0.0.
У нас, кстати, что с рутом, что без рута - все работает...

Сообщение объединено: 11 февраля 2013, 13:52:28

Пока писали-гуглили, уже gupl ответил :)
Все мы где-то, когда-то и в чем-то были новичками.

qupl

Цитата: Malaheenee от 11 февраля 2013, 13:51:53Пока писали-гуглили, уже gupl ответил
Вай-вай
буква не та Qupl   ;D
[свернуть]

Malaheenee

Все мы где-то, когда-то и в чем-то были новичками.

lisss

#9
от пользователя в консоли
synaptiks
и настраивай. Там же поставь автозагрузку.

Malaheenee

Все мы где-то, когда-то и в чем-то были новичками.

fry

#11
Сделал
Открыть содержимое (спойлер)
#!/bin/sh
export DISPLAY=:0
if [ "$ACTION" == "add" ]
then
synclient TouchpadOff=1
# Раскомментировать для ноутбуков ASUS (погасить индикатор)
#echo 0 > /proc/acpi/asus/tled
elif [ "$ACTION" == "remove" ]
then
synclient TouchpadOff=0
# Раскомментировать для ноутбуков ASUS (зажечь индикатор)
#echo 1 > /proc/acpi/asus/tled
fi
[свернуть]
не помогло. Udev перезапустил. Не думаю, что перезагружать нужно.
Попробовал еще
# export DISPLAY=:0
# synclient TouchpadOff=1
No protocol specified
No protocol specified
Failed to connect to X Server.

Может ему xhost + нужно?
Пы.Сы. Кстати, помогло. но как-то костыльно, по-моему. Не?
Товарищи призывники! Надо понимать всю глубину наших глубин!

Руководство по добавлению изображений на форум

Malaheenee

Немного.
fry, а если забэкапить оригинальный /usr/bin/X и кинуть ссылку как у нас (с перезапуском иксов, естественно)?
Все мы где-то, когда-то и в чем-то были новичками.

fry

Сейчас домой приду и попробую. Тока при обновлениях же заменится файл.
Товарищи призывники! Надо понимать всю глубину наших глубин!

Руководство по добавлению изображений на форум

Malaheenee

Зависит от версии. У нас на Wheezy уже полгода никакие обновления его не затирают по причине изначального отсутствия этого файла.
Все мы где-то, когда-то и в чем-то были новичками.