
Я создал скрипт для настройки планшета Intuos в начале сеанса:
#!/bin/sh
xsetwacom set "Wacom Intuos4 4x6 pad" AbsWheelUp "key ctrl minus";
xsetwacom set "Wacom Intuos4 4x6 pad" AbsWheelDown "key ctrl plus";
xsetwacom set "Wacom Intuos4 4x6 pad" Button 1 "key ctrl 0"; #touchring button
xsetwacom set "Wacom Intuos4 4x6 stylus" Button 2 3;
xsetwacom set "Wacom Intuos4 4x6 stylus" Button 3 2;
xsetwacom set "Wacom Intuos4 4x6 stylus" TabletPCButton on;
который я сохранил как ~/bin/.wacomsetup.sh
запущенный chmod a+x ~/bin/.wacomsetup.sh
. Проверка свойств показывает, что его можно запускать как программу, но моя учетная запись пользователя может только читать/писать в файл.
Я подтвердил, что он работает, когда я запускаю его из терминала с помощью sh ~/bin/.wacomsetup.sh
, но когда я ввожу путь в качестве записи команды в новой записи в «Автозагрузка приложений» (это относится только к Cinnamon?), он не запускает скрипт после входа в систему/перезапуска (мне приходится запускать его вручную).
Изменить программу запуска:
Имя: Setup Wacom Intuos
Команда: sh ~/bin/.wacomsetup.sh
Комментарий:ksdfk
Нужно ли мне применить к скрипту какие-либо другие разрешения, чтобы разрешить его запуск при запуске таким образом?
Спасибо
(я был бы признателен, если бы кто-нибудь мог переименовать этот вопрос более уместно, если существуют более подходящие теги.)
решение1
Несколько вещей, которые стоит попробовать:
Замените «~» в пути в разделе «Автозагрузка приложений» на абсолютный путь к вашей домашней папке (например
/home/whateveryourusernameis
, )Удалите
sh
из пути, так как он не нужен; пока скрипт является исполняемым (с установленным битом «x» в DACL),#!/bin/sh
в начале скрипта будет определять, что это скрипт оболочки, и автоматически запустит интерпретатор оболочки для выполнения команд.Попробуйте переместить скрипт в
/usr/bin
, сделав егомирчитаемый и исполняемый, и устанавливаемCommand:
в Startup Applications значение простоwacomsetup.sh
. Хотя я сомневаюсь, что этот шаг необходим, поскольку Startup Applications запускаются под вашей учетной записью после входа в систему, а Xorg должен быть уже запущен...Просто чтобы убедиться, что проблема не в скриптеработаетно команды не выполняются по какой-то причине: в верхней части скрипта под строкой
#!/bin/sh
попробуйте добавить:echo scripted > ~/scripted
(измените часть "scripted", если у вас уже есть файл с таким именем для другого использования). Затем убедитесь, что этот файл не существует, затем выйдите из системы/войдите в систему и посмотрите, записывает ли он этот файл. Если нет, скрипт даже не запущен. Если вы видите этот файл, то скрипт запущен, но вызовыxsetwacom
не выполняются.
решение2
Я не уверен, что вы имеете в виду под "Startup Applications". Я предполагаю, что это GUI-фронтэнд. Где вы его нашли?
В любом случае, вы пробовали добавить новый файл .desktop в ~/.config/autostart
? Он должен быть примерно таким:
[Desktop Entry]
Name=wacomsetup
Type=Application
Exec=/home/your_user/bin/.wacomsetup.sh
X-GNOME-Autostart-enabled=true
Comment=Blah blah
Hidden=false
Сохраните его, например, как , wacomsetup.desktop
затем выйдите из системы и войдите снова.