Внутрішня система wallта настільки заблокована та стародавня, що насправді немає можливості витягнути з неї повідомлення, як тільки воно з’явиться.
Єдина реальна ідея, висунута для цього ( проблема обговорювалася раніше , багато разів) - це змінити shutdownта rebootскрипти, щоб вони або зробили щось доступним через dbus, або (оскільки ми маємо справу лише з одним комп'ютером та одним виправленням), ви могли б просто надішліть йому повідомлення-надіслати повідомлення.
Вони є просто скрипти , щоб ви могли просто зламати їх. Але я думаю, що це, мабуть, причина, на яку варто наполягати. Надішліть помилку на Ubuntu та додайте свої патчі (просто переконайтеся, що вони можуть працювати, не надсилаючи повідомлення, якщо немає середовища X). Це такий тип зручності, який нам потрібен.
Я ніколи не чув про це gxmessageраніше, але хотів би скористатися notify-send.
Повноцінне рішення потребує можливості для отримання декількох дисплеїв (наприклад, багатоголовок, віддалених користувачів тощо), але, на щастя, я вчора написав код для цього:
for display in `ps aux | grep -oE "/usr/bin/X\s[^ ]+" | cut -d " " -f 2`; do
DISPLAY=$display notify-send -u critical 'Shutdown notice' 'Save all your work. THE SYSTEM IS GOING DOWN!!' -i /usr/share/pixmaps/gnome-computer.png
done
(Я використовую експорт замість -displayабо --displayпрапор, тому що я не знаю, що notify-sendзаймає і те)
libnotify-binупаковки.