NetworkManager Applet 没有响应,我在 ~/.xsession-errors 中看到“org.freedesktop.Notifications:已达到超时”错误

NetworkManager Applet 没有响应,我在 ~/.xsession-errors 中看到“org.freedesktop.Notifications:已达到超时”错误

我在 ~/.xsession-errors 中看到以下错误

(nm-applet:1122): nm-applet-WARNING **: 11:12:56.101: Failed to show notification: Error calling StartServiceByName for org.freedesktop.Notifications: Timeout was reached
[1342:1937:0821/111259.646185:ERROR:object_proxy.cc(619)] Failed to call method: org.freedesktop.Notifications.GetCapabilities: object_path= /org/freedesktop/Notifications: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

我正在使用 i3,并在状态栏中使用 xfce 助手来使一些事情变得更简单一些。

我知道如果我启动 xfce4-notifyd,它会解决问题并修复 xsession-errors 中的错误。

systemctl --user start xfce4-notifyd

systemctl --user status xfce4-notifyd
● xfce4-notifyd.service - XFCE notifications service
   Loaded: loaded (/usr/lib/systemd/user/xfce4-notifyd.service; static; vendor preset: enabled)
   Active: active (running) since Wed 2019-08-21 12:52:28 SAST; 10s ago
 Main PID: 10783 (xfce4-notifyd)
   CGroup: /user.slice/user-1000.slice/[email protected]/xfce4-notifyd.service
           └─10783 /usr/lib/xfce4/notifyd/xfce4-notifyd

Aug 21 12:52:28 aaron-pc systemd[1088]: Starting XFCE notifications service...
Aug 21 12:52:28 aaron-pc systemd[1088]: Started XFCE notifications service.

如何让 xfce4-notifyd 在启动或登录时启动。

答案1

经过大量阅读,我发现以下资源帮助我找到了这个简单的解决方案

sudo vim /usr/share/dbus-1/system-services/org.freedesktop.Notification.service

[D-BUS Service]
Name=org.freedesktop.Notifications
Exec=/usr/lib/x86_64-linux-gnu/xfce4/notifyd/xfce4-notifyd

您可能想看看 dbus 中配置了哪些其他通知服务。

ls /usr/share/dbus-1/services/ | grep -i noti
org.kde.plasma.Notifications.service
org.xfce.xfce4-notifyd.Notifications.service

如果您已经配置了其他通知服务,这可能会导致两者出现问题,请尝试启动。

sudo rm /usr/share/dbus-1/services/org.kde.plasma.Notifications.service

在我的情况下,我使用的是 Manjaro,它是 arch 的一种。我的设置有点不同。

可执行文件的路径位于不同的地方。

pacman -Ql xfce4-notifyd | grep 'xfce4-notifyd$'
xfce4-notifyd /usr/lib/xfce4/notifyd/xfce4-notifyd

我的执行行看起来像这样

Exec=/usr/lib/xfce4/notifyd/xfce4-notifyd

此外,还xfce4-notifyd需要启动该服务

systemctl --user status xfce4-notifyd
● xfce4-notifyd.service - XFCE notifications service
Loaded: loaded (/usr/lib/systemd/user/xfce4-notifyd.service; static; vendor preset: enabled)
Active: inactive (dead)

systemctl --user start xfce4-notifyd

systemctl --user status xfce4-notifyd
● xfce4-notifyd.service - XFCE notifications service
Loaded: loaded (/usr/lib/systemd/user/xfce4-notifyd.service; static; vendor preset: enabled)
Active: active (running) since Tue 2020-03-10 08:34:10 SAST; 5s ago
Main PID: 7991 (xfce4-notifyd)
CGroup: /user.slice/user-1000.slice/[email protected]/xfce4-notifyd.service
        └─7991 /usr/lib/xfce4/notifyd/xfce4-notifyd

Mar 10 08:34:10 aaron-pc systemd[1456]: Starting XFCE notifications service...
Mar 10 08:34:10 aaron-pc systemd[1456]: Started XFCE notifications service.

为了确保在启动时发生这种情况。我添加了以下内容

cd ~/.config/systemd/user/
ln -s /usr/lib/systemd/user/xfce4-notifyd.service 

相关内容