Запустить приложение (GUI) при подключении любых USB-устройств

Я запускаю Ubuntu-gnome 16.04 LTS 4.4.0-62-generic.

Я хотел бы сделать следующее: Запустите либо ...

(a) приложение (GUI) [/path/to/my_app.desktop] или (b) интерактивный скрипт в терминале [например: $ gnome-terminal -x /path/to/script.sh]

.. каждый раз, когда распознается монтировка любого (USB) устройства.

Выполнение на X-сервере пользователя кажется обязательным, поскольку переменный ввод пользователя требуется в ответ на запущенное приложение / скрипт; он не может просто работать в фоновом режиме.

За последние 2 дня я провел обширные исследования и экспериментировал как с udev-правилами, так и с systemd.services. Моя сложная проблема заключается в том, что любой из последних подходов требует X-аутентификации. Несмотря на то, что есть достоверные (запутанные) способы сделать аутентификацию, мне не нравится идея нарушить врожденную безопасность системы, экспортируя переменные $ XAUTHORITY из корня в пользовательский сеанс ...

Я полагаю, должен быть альтернативный способ сделать следующее:

обнаруживать, когда / если новое (USB) устройство было смонтировано, запускает приложение / скрипт (в терминале) с привилегиями пользователя USER на рабочем столе пользователя (например, Xsession пользователя ?) (необязательно: передать devicename как переменную)

(создание файлов с поддержкой монтирования .config ?; org.gnome.desktop.media-handling ?; autostart-script observing / home / $ USERNAME / media .mounts ?; edit / etc / fstab; ...?)

Любые подсказки будут высоко оценены.

1
задан 29 December 2017 в 12:46

0 ответов

Другие вопросы по тегам:

Похожие вопросы: