Я написал сценарий, который обрабатывает вывод synclient
чтобы определить, отключился ли тачпад ноутбука чудесным образом (Ubuntu, кажется, / любит / делает это в последнее время), и, если да, включает его снова.
Скрипт выглядит примерно так:
#!/bin/bash
while true ; do
if [ `synclient | grep -e"TouchpadOff[\s]*1" | wc -l` -ge 1 ] ; then
synclient TouchpadOff=0
fi
sleep(3)
done
(У меня нет ноутбука под рукой прямо сейчас, но вы понимаете! Я обновлю позже, когда буду на своем ноутбуке, если это неверно)
Поэтому я попытался запустить это как сценарий выскочки, чтобы моя сенсорная панель могла исцеляться без какого-либо взаимодействия. Но кажется, что synclient не находит текущий сеанс X пользователя, когда мой скрипт запущен.
Я пробовал запустить его, используя что-то вроде su -c myscript.sh ledneb
в моей строфе сценария, но безрезультатно.
Стоит ли мне смотреть в сторону / etc / X11 / xinit / xinitrc, а не выскочку?
Есть ли правильный способ запустить этот сценарий в контексте текущего (или даже жестко заданного) сеанса пользователя x?
Вы можете делать то, о чем просите ...
... но я не уверен, что это правильный подход. Если вы еще этого не сделали, рассмотрите возможность сообщения о проблеме в Ubuntu, чтобы ее можно было исправить, поскольку описываемое вами поведение звучит как ошибка.