Я пытаюсь построить простой киоск, используя скрипт Python с модулем клавиатуры, чтобы определять клавиши на клавиатуре и выполнять команды соответственно.Проблема в том, что модуль клавиатуры Python в Linux работает как root, но мои приложения для киоска запускаются как непривилегированный пользователь.Как только я запускаю приложение киоска из своего скрипта Python, фокус каким-то образом украден, и события клавиатуры больше не регистрируются моим скриптом Python.Вот код:
import os
import keyboard
white True:
if keyboard.is_pressed('q'):
break
elif keyboard.is_pressed('1'):
os.system('runuser tux -c \' firefox localhost\'')
else:
pass
Используя этот код, Firefox запущен успешно, и у меня запущено приложение localhost.Но теперь этот тот же самый скрипт на Python больше недоступен.'q'
выйти не работает.
Я также попытался использовать модуль subprocess.call
вместо модуля os
, но это тоже не сработало.Я также попытался использовать sudo
или su
для выполнения команды, но это также не сработало.
Есть идеи, как мне это исправить?Или, может быть, предложить альтернативный подход к текущему методу, который я использую?