会话总线初始化

时间:2015-11-02 14:39:54

标签: python linux dbus

我试图使用D-Bus来控制另一个应用程序。使用Python绑定时,可以将D-Bus与dbus.SessionBus()一起使用。

但是,其他应用程序需要首先设置环境变量DBUS_SESSION_BUS_ADDRESSDBUS_SESSION_BUS_PID,否则他们会报告任何.service文件都没有提供名称&#34;。< / p>

我的问题是,为什么某些应用程序需要设置环境变量?在某些情况下,是初始化会话总线的标准过程吗?

1 个答案:

答案 0 :(得分:0)

只是猜测:python客户端可能能够使用X11来发现会话总线地址(除了使用DBUS_SESSION_BUS_ADDRESS环境变量)。它存储在_DBUS_SESSION_BUS_ADDRESS选择所有者窗口的_DBUS_SESSION_BUS_SELECTION_[hostname]_[uuid]属性中(uuid是/ var / lib / dbus / machine-id的内容)