Правильный способ настройки ~ / .Xsession с помощью автономного оконного менеджера для корректного завершения сеанса

2617
cYrus

Я использую xdmи ~/.Xsessionвыглядит так:

# <initialization stuff here>  exec openbox 

Это работает, но я заметил, что, когда я выхожу из системы Openbox, не изящно убивает все приложения. В частности Google Chromeжалуется на это.

Как я могу быть уверен, что дождался завершения всех процессов (как и другие конфигурации: Gnome, KDE, Windows ...)?

Единственное ( безобразное ) решение, которое я нашел, включает sleepи killв ~/.Xsession.

4

2 ответа на вопрос

1
Karl Bielefeldt

Вам нужен менеджер сеансов, чтобы изящно убить приложения. openbox-sessionможет делать что хочешь. В документах прямо сказано, что он не выполняет часть сеанса сохранения, но он может выполнять часть изящного уничтожения. openbox-gnome-sessionили openbox-kde-sessionпозволит вам использовать соответствующие менеджеры сеансов при использовании openbox в качестве вашего оконного менеджера.

Попробовал это, ни за что, такое же поведение. Что еще я могу использовать в качестве менеджера сеансов? Я не вижу много (автономных) вариантов. cYrus 13 лет назад 0
1
cYrus

Вот как я решил, я отредактировал ~/.Xsessionтак:

# <initialization stuff here>  openbox-session & WM_PID=$!  sleep 0.5 # time needed to start openbox  # <autostart applications here>  wait $WM_PID  for i in `ps -u $USER -o pid= | grep -v $$` ; do kill $i done  sleep 1 # grace time 

Я не могу найти ничего лучше сейчас. Может быть, мне следует использовать менеджер сессий, но я не знаю, какой из них подходит для моего случая.

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