Как отобразить графический интерфейс Kivy с помощью cron planner?

#python #cron #kivy

#питон #cron #kivy

Вопрос:

Я создал простой скрипт на Python, который будет отображать небольшое окно предупреждения. Я хотел, чтобы это делалось каждые 20 минут, поэтому я заглянул в cron планировщик, так как я использую Ubuntu.
Команда, которую я использовал для запуска скрипта, была python3 alert.py , с alert.py быть скриптом в моем домашнем каталоге.
cron Настройка была выполнена с помощью gnome-schedule приложения, поэтому я предполагаю, что там все в порядке. Это alert.py :

 from kivy.base import runTouchApp
from kivy.uix.label import Label
from kivy.core.window import Window
Window.size = (200, 100)
runTouchApp(Label(text = "Test Alert!"))
 

Проблема в том, что окно не появляется. И, как кажется, скрипт вообще не запущен (я добавил os.mkdir вызов, но каталоги не появились). В чем проблема? И как я могу просмотреть журнал, в который выводится скрипт stdout ?

Комментарии:

1. Я подозреваю, что в вашем cron может не быть настроено env (включая PATH), так что команда выдает ошибку. Не могли бы вы, пожалуйста, попробовать перенаправить выходные данные в файл и посмотреть, есть ли в этом какие-либо подсказки? (вы можете сделать это, добавив >>/var/log/mycron.log 2>amp;1 )

2. Также вы видите запись в crontab -l ?

3. Только что нашел похожий ответ, в котором есть потрясающий контрольный список, пожалуйста, попробуйте askubuntu.com/questions/15255 /…

4. @Ivan спасибо, мне удалось найти решение по-другому. Да, cron был настроен и запущен (когда я попробовал сценарий оболочки, он работал просто отлично)

Ответ №1:

Решение состояло в том, чтобы изменить поведение команды на X application (вместо Default behaviour ). После этого изменения отображается консоль и отображается графический интерфейс.

gnome-расписание