Linux多桌面环境互不影响,解决Linux下多桌面环境时通知程序混乱的问题

如果在 Linux 系统中安装多个桌面环境时,因为每个桌面环境都会附带通知程序(即用于弹出通知提示窗口的程序),那么可能就会出现桌面通知程序混乱的问题,例如在 Deepin 桌面环境中弹出 Xfce 的风格的通知。

问题产生原因

Linux 桌面使用 DBus 作为程序间通讯的机制,而桌面通知就是一个特殊的 DBus 服务。任何一个桌面程序向特定的 DBus 服务接口 org.freedesktop.Notifications 发送规范的通知信息的时候, DBus 系统会自动通知并唤醒响应程序来实现用户的通知。

响应程序通过在 /usr/share/dbus-1/services 目录下放置 *.service 配置文件的形式,向 DBus 系统注册自己需要响应服务接口。

那么通过下面的这个命令,我们就能知道有哪些程序注册了 org.freedesktop.Notifications 服务接口,即 DBus会调用这些程序来显示桌面通知:

grep -rnw /usr/share/dbus-1/services/ -e "Notifications"

输出的结果,就显示了有哪些 service 文件注册了桌面通知服务,例如下面的输出就表明 Deepin 的桌面通知程序注册了桌面通知服务:

/usr/share/dbus-1/services/com.deepin.Notifications.service:2:Name=org.freedesktop.Notifications

解决方法

在整个系统中只保留自己想要的桌面通知服务程序。

** 建议通过系统默认的包管理器移除不需要的通知程序软件包(例如 xfce4-notifyd)。**

一个绕过的方法:删除不想要的通知类程序的service文件,使DBus不会自动唤醒他们。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值