私はパーティーに少し遅れていることに気づきました(そして私の答えはubuntu-mateに固有ではありません)が、ここに行きます...
私はあなたに非常に似た要件を持っていますが、Debian 9(ストレッチ)でxfceを実行しているので、gnome / gsettingsはインストールされていません。usb-mouseをプラグイン/アンプラグするたびにシナプスタッチパッドを無効化/再有効化するには、udepルールを使用して、シナプスタッチパッドドライバをアンバインド/再バインドする(posix)シェルスクリプトをトリガーします。
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のすべての場合と同様に、走行距離は異なる場合があります。「微調整」する必要があるかもしれませんが、理解しやすいように最善を尽くしました。ドライバーのバインド/バインド解除の詳細については、Linux Weekly NewsのGreg Kroah-Hartmanの2005年の記事を参照してください。また、カーネルソースにもいくつかの良い情報があります。udevルールの書き直しについて詳しくは、Daniel Drakeの優れたチュートリアルをご覧ください。