GTK + диалог из программы, запускаемой сценарием инициализации - PullRequest
0 голосов
/ 29 июня 2011

У меня есть приложение, которое порождает диалог GTK +.При запуске из терминала работает правильно.Проблема в том, что мое приложение работает как демон и запускается сценарием из /etc/init.d

Я думаю, что все, что запускается с помощью сценария init, помещается в tty1, где GNOME недоступен (этона tty7).Я не знаю, правильно ли это, но как я могу решить эту проблему?

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 30 июня 2011

Я почти уверен, что демон никогда не должен включать графические элементы ... Это относится к клиентскому приложению, которое взаимодействует с демоном.

1 голос
/ 03 июля 2011

Ну, проблема не в tty, а в том, что внутри вашего X-сервера у вас установлен $ DISPLAY, поэтому Gtk + знает, где отображать ваше окно. На tty (то есть в скрипте, который не запускается изнутри X), он не установлен, поэтому Gtk + не знает, где отобразить окно. Вы также не можете предполагать, что X работает на определенном дисплее или даже что X доступен, что является причиной того, что у вас никогда не должно быть отображения демона что-либо . Хороший демон не ожидает ввода данных пользователем, ничего не отображает и перенаправляет весь свой вывод в файл журнала или системный журнал.

...