Я понимаю, что немного опоздал на вечеринку (а также, что мой ответ не относится к Ubuntu-Mate), но здесь идет ...
У меня очень похожие требования к вам, но я запускаю xfce на Debian 9 (stretch), поэтому у меня не установлено ни gnome / gsettings. Чтобы отключить / повторно включить сенсорную панель synaptics всякий раз, когда я подключаю / отключаю usb-мышь, я использую правила udev для запуска сценария оболочки (posix), который отвязывает / повторно связывает драйвер сенсорной панели synaptics:
В качестве пользователя root создайте /usr/local/sbin/touchpadctl.sh со следующим содержимым:
#!/bin/sh
set -o errexit #(equivalent -e)
set -o nounset #(equivalent -u)
usage(){
echo "Usage: ${0} {-enable|-e|-disable|-d}"
}
if [ $# -ne 1 ]; then
usage
exit 1
fi
base_dir=/sys/bus/serio/drivers/psmouse
device_id=serio1
if [ ${1} = "-disable" -o ${1} = "-d" ]; then
logger "${0} is disabling the touchpad"
echo -n manual > $base_dir/bind_mode
echo -n $device_id > $base_dir/unbind 2>/dev/null || true
elif [ ${1} = "-enable" -o ${1} = "-e" ]; then
logger "${0} is enabling the touchpad"
echo -n auto > $base_dir/bind_mode
else
usage
exit 1
fi
Сделайте ваш скрипт управления сенсорной панелью исполняемым:
sudo chmod +x /usr/local/sbin/touchpadctl.sh
Теперь проверьте ваш скрипт. Чтобы отключить сенсорную панель:
sudo /usr/local/sbin/touchpadctl.sh -d
и включить тачпад:
sudo /usr/local/sbin/touchpadctl.sh -e
Поскольку при этом используется «связывание драйверов», никакой зависимости от X / xorg / wayland / gnome нет. В результате вы можете использовать его в правилах udev, которые будут корректно работать при загрузке:
В качестве пользователя root создайте /etc/udev/rules.d/01-touchpad.rules со следующим содержимым:
KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="add", \
RUN+="/usr/local/sbin/touchpadctl.sh -disable"
KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="remove", \
RUN+="/usr/local/sbin/touchpadctl.sh -enable"
Как и во всем Linux, ваш пробег может варьироваться - вам, возможно, придется «подправить» его, но я старался изо всех сил, чтобы его было легче понять. Для получения дополнительной информации о связывании / развязывании драйверов, прочитайте статью Грега Кроа-Хартмана 2005 года в Linux Weekly News, а также есть хорошая информация в исходном коде ядра . Для получения дополнительной информации о переписывании правил udev посмотрите превосходное руководство Дэниела Дрейка .