Как я уже писал ранее, отключение тачпада при подключении мыши — самая простая и естественная вещь, которая только может происходить. Я удивлён, что такой функционал не предусмотрен по умолчанию в каждой операционной системе, но куда ж деваться :-(.
Итак, если вы пользуетесь всевозможными системами на основе Линукс (включая Ubuntu), для автоматического отключения тачпада есть огромное количество способов. Например, можно написать два правила для udev (/home/user надо будет заменить на ваш домашний каталог):
SUBSYSTEM=="input", KERNEL=="mouse[0-9]*", ACTION=="add", ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/user/.Xauthority", RUN+="/usr/bin/synclient TouchpadOff=1" SUBSYSTEM=="input", KERNEL=="mouse[0-9]*", ACTION=="remove", ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/user/.Xauthority", RUN+="/usr/bin/synclient TouchpadOff=0"
Этот вариант идеально подойдёт для простых случаев. Но например, если вы пользуетесь Gnome (или менеджером GDM), то, скорее всего, ничего не выйдет.
В Ubuntu (практически любой версии, будь то Oneric Ocelot, Precise Pangolin, Raring Ringtail, Saucy Salamander, Trusty Tahr или ещё что) можно поставить пакет touchpad-indicator:
sudo add-apt-repository ppa:atareao/atareao sudo apt-get update sudo apt-get install touchpad-indicator
Или сразу одной строкой:
sudo add-apt-repository ppa:atareao/atareao && sudo apt-get update && sudo apt-get install touchpad-indicator
Тот же пакет, например, можно установить и в ArchLinux:
yaourt touchpad-indicator
Самые продвинутые создатели, похоже, у KDE: в любом дистрибутиве в KDE (или в KUbuntu) можно просто войти в настройки тачпада и приказать ему отключаться при подключении мышки.
Для самостоятельного включения/выключения можно использовать следующий скрипт (найдено в сети, оригинальный автор неизвестен):
#!/bin/bash tpid=`xinput list | grep SynPS | sed 's/.*id\=\([0-9]\+\).*/\1/g'` declare -i status status=`xinput list-props ${tpid} | grep Device\ Enabled | sed -e 's/.*\:[ \t]\+//g'` if [ 0 -eq ${status} ] ; then xinput enable ${tpid} else xinput disable ${tpid} fi
Основная идея состоит в том, что любое устройство ввода можно отключить при помощи xinput, надо лишь найти его идентификатор и сохранить в переменную tpid. В любом случае, если вы будете запускать эту команду самостоятельно, она будет работать. А вот в udev загнать её так просто не получится: надо будет подсунуть ей правильный .Xauthority файл.