通知在Linux独立窗口管理器(Openbox,Awesome WM等)上不起作用。我尝试安装notification-daemon和dunst,但使用发送notify-send "something"
并没有弹出任何窗口。
我试图运行polkit-gnome-agent并直接运行通知守护程序,但是它没有帮助(前一阵子我以这种方式解决了类似的问题,但现在它什么都不做)。
除非我使用python发送琐碎的通知,否则没有任何错误迹象,然后我只会得到模糊的错误消息:
File "/usr/lib/python3.3/site-packages/gi/types.py", line 113, in function
return info.invoke(*args, **kwargs)
gi._glib.GError: Could not connect: Connection refused
琐碎的C程序什么也不输出(例如,没有错误)。
我正在将Archlinux与systemd和d-bus一起使用,我怀疑这是polkit或某种守护程序未在窗口管理器启动上运行的问题,但不知道该怎么办,或者如何获得更有意义的错误消息。
编辑:我从那里获取示例代码:https : //wiki.archlinux.org/index.php/Libnotify#Python
Dbus应该正在运行,因为systemd将其作为依赖项。我已经libnotify
安装了-它是提供的软件包notify-send
。另外,通知守护程序还应通过以下桌面文件根据需要启动(仅在到达通知时)/usr/share/dbus-1/services/org.freedesktop.Notifications.service
:
[D-BUS Service]
Name=org.freedesktop.Notifications
Exec=/usr/bin/dunst
我什至尝试直接运行守护程序(只是执行)并尝试发送通知。如果有人知道如何获取更多信息,请随时提出建议。
编辑2:我试图运行使用sudo通知守护程序:sudo notification-daemon_name &
(对我来说sudo dunst &
)和sudo notify-send something
,然后通知的作品。但是,当我尝试以非特权用户身份执行之前的任何操作(这对于大多数程序以非特权用户身份发送通知很重要)时,什么都没有显示。
notification-daemon
拒绝工作而没有任何错误或警告。
编辑3:显然是权限问题:没有root访问权限,我无法发送通知。干净重启后:sudo notify-send "something"
即使没有手动启动任何守护程序也可以工作,但是我(和我启动的程序)应该如何做才能在没有root特权的情况下发送通知,这在Gnome或任何其他完整桌面环境中是可能的?
libnotify
了该程序,因为它提供了notify-send
命令(您所需要的全部)?