Сайт | Скачать | Видео | Wiki

Автор Тема: notify-send от root (всплывающие сообщения)  (Прочитано 4238 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33972
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Демоны сообщений в разных DE разные, но везде они запускаются от пользователя DE
При этом notify-send от пользователя DE работает, а от root - нет

Решал эту проблему dbus-launch notify-send. Помогало, но выявил побочку : каждое сообщение от root запускало демона и несколько его копий висели в RAM

Правильное решение :
запускать через sudo от пользователя
На практике оказалось достаточно
Код
alias notify-send="sudo -u USERNAME  notify-send"
где USERNAME - имя пользователя DE
Тем более что DBUS_SESSION_BUS_ADDRESS в старых системах другой

Поправил : 089-lfd10-upd-sf81.pfs 089-upd-u22-sf29.pfs 089-upd-2305-sf18.pfs (выложил для подписчиков)

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: notify-send от root (всплывающие сообщения)
« Ответ #1 : 12 Октябрь 2023, 17:42:40 »
При этом notify-send от пользователя DE работает, а от root - нет
В Richy от root работало, только выглядело иначе.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33972
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: notify-send от root (всплывающие сообщения)
« Ответ #2 : 13 Октябрь 2023, 10:51:44 »
выглядело иначе.
Какой демон использовали?
В Richy от root работало
Покажите ps axu |grep dbus |head -n3

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: notify-send от root (всплывающие сообщения)
« Ответ #3 : 13 Октябрь 2023, 11:45:20 »
Какой демон использовали?
dunst
Покажите ps axu |grep dbus |head -n3
Richy больше нет, сейчас AntiX
Код
root@antix1:/home/live# ps axu |grep dbus |head -n3
message+  1815  0.0  0.1   5404  3176 ?        Ss   10:25   0:00 /usr/bin/dbus-daemon --system
live      3441  0.0  0.1   7344  2220 ?        S    10:36   0:00 dbus-launch --autolaunch=73e7e55f4ef1deb625b1fad5651e91db --binary-syntax --close-stderr
live      3442  0.0  0.1   5132  2772 ?        Ss   10:36   0:00 /usr/bin/dbus-daemon --syslog-only --fork --print-pid 5 --print-address 7 --session
От рута работает.
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33972
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: notify-send от root (всплывающие сообщения)
« Ответ #4 : 13 Октябрь 2023, 16:53:27 »
От рута работает.
и при этом не прописано у рута
alias notify-send=
?

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: notify-send от root (всплывающие сообщения)
« Ответ #5 : 13 Октябрь 2023, 19:21:39 »
?
Ничего не настраивал, все настройки AntiX по умолчанию.

Повспоминал, какие проблемы с нотификацией были. Не показывалось уведомление, когда программа (в данном случае UpNet) запускалась от udev (и иконка в трее тоже), от рута - нормально. Причина - отсутствие переменной DISPLAY в /proc/`pidof prog`/environ. С ядрами 4.x.x можно было экспортировать переменную, но в ядрах 5.x.x эту возможность убрали.
« Последнее редактирование: 14 Октябрь 2023, 20:06:53 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33972
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: notify-send от root (всплывающие сообщения)
« Ответ #6 : 16 Октябрь 2023, 11:14:21 »
сейчас AntiX
Посмотрел. antix 21:
Вообще нет демонов нотификации. Поставил dunst. Запускается от demo и root. Запускает 2 копии демона от каждого юзера. alias у root нет.
С dbus-launch плодит демонов
Вывод - в шапке у меня универсальный оптимальный рецепт

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: notify-send от root (всплывающие сообщения)
« Ответ #7 : 16 Октябрь 2023, 12:07:01 »
у меня универсальный оптимальный рецепт
Ну, как всегда :)
Посмотрел. antix 21:
Хороший дистрибутив, правда? Но плохой, излишеств много.
« Последнее редактирование: 16 Октябрь 2023, 12:09:20 от DdShurick »
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64

Оффлайн sfs

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 33972
  • Репутация: +231/-0
  • Автор темы
    • PuppyRus-A
Re: notify-send от root (всплывающие сообщения)
« Ответ #8 : 16 Октябрь 2023, 12:38:02 »
Ну, как всегда
Можете предложить альтернативное решение?  ;)

Оффлайн krasnyh

  • Ветеран
  • *****
  • Сообщений: 5331
  • Репутация: +139/-1
Re: notify-send от root (всплывающие сообщения)
« Ответ #9 : 16 Октябрь 2023, 13:06:56 »
alias notify-send="sudo -u USERNAME  notify-send"
В ачвики строка чуть сложней:
Код
# sudo -u X_user DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/X_userid/bus notify-send 'Hello world!' 'This is an example notification.'

Оффлайн DdShurick

  • Это Риччи
  • Активный участник
  • Ветеран
  • ****
  • Сообщений: 8635
  • Репутация: +187/-2
  • Старый чайник
Re: notify-send от root (всплывающие сообщения)
« Ответ #10 : 16 Октябрь 2023, 14:17:40 »
Можете предложить альтернативное решение?
Сейчас не могу, не в теме. Сильно отстал от жизни за эти годы. :(
Моноблок Lenovo IdeaCentre c200 (Intel Atom D525, Intel GMA 3150, 2 Gb RAM) Richy64
Nettop Acer Aspire Revo R3610 (Atom N330, nVidia GeForce 9400, 3 Gb RAM) Richy64