这不是针对application-indicators而是针对system-indicators。
图片来自:https : //wiki.ubuntu.com/DesktopExperienceTeam/ApplicationIndicators
目标是在 Greeter/Lock/Ubiquity 屏幕中显示指标系统监视器。有一个解决方法:
我已经在 C 语言中工作了,请参阅我的另一个问题:
但是,indicator-sysmonitor与许多其他应用程序指标一样,它已经是用 Python 开发的。我不喜欢这样的想法:如果开发人员想在欢迎/锁定/无处不在的屏幕中显示指示器,他们必须将他们的项目移植到 C 或编写 Python-C 代理。相反,让 indicator-sysmonitor 直接从 python 创建一个系统指示器将是最好的解决方案(没有变通方法,它将是当前使用 appindicator 的所有 python 项目的通用解决方案)。
我正在努力将它移植到 Python 中。这是我当前的代码,它不起作用。它确实为菜单和操作创建了 DBus 对象。它列在 XFCE 指标插件中。但没有显示在面板上。
/usr/lib/indicator-test/indicator-test-service
#!/usr/bin/python2
import os
import sys
import gi
from gi.repository import Gio, GLib
APPLICATION_ID = 'local.sneetsher.indicator.test'
DBUS_MENU_PATH = '/local/sneetsher/indicator/test/desktop'
DBUS_ACTION_PATH = '/local/sneetsher/indicator/test'
def callback():
print ok …Run Code Online (Sandbox Code Playgroud)是否有图形工具或命令行工具,可以列出我可以发送到启用 DBUS 的程序的所有消息和参数/参数?我真的很想尝试编写一些 DBUS 的脚本,但我几乎找不到大多数应用程序的 DBUS 功能的任何文档。
我的主文件夹~/.dbus中有一个只能由 root 读取和写入的文件夹:
drwx------ 3 root root 4096 Feb 17 17:30 .
drwx------ 2 root root 4096 Feb 17 17:30 session-bus
Run Code Online (Sandbox Code Playgroud)
这是正确的设置吗?或者如果没有,那怎么会发生?
当我尝试通过线路输入将吉他连接到计算机时遇到问题。Audacity效果很好,我可以录制我在吉他上弹奏的内容(从Preferences录制位置选择default:line0)。但问题出在Qjackctl 中:起初当我点击start它时会显示此错误:

之后,当我单击Cancel它时会出现此错误:

这是来自messages窗口的日志:
10:30:37.368 接线板停用。 10:30:37.416 统计重置。 10:30:37.459 ALSA 连接更改。 10:30:37.497 D-BUS:服务可用(org.jackaudio.service aka jackdbus)。 无法连接到服务器套接字 err = 没有这样的文件或目录 无法连接到服务器请求通道 jack 服务器未运行或无法启动 10:30:37.512 ALSA 连接图更改。 10:30:44.060 D-BUS:无法启动 JACK 服务器。对不起 无法连接到服务器套接字 err = 没有这样的文件或目录 无法连接到服务器请求通道 jack 服务器未运行或无法启动 2012 年 12 月 1 日星期六 10:30:43:启动 jack 服务器... 2012 年 12 月 1 日星期六 10:30:43:JACK 服务器以优先级 10 的实时模式启动 2012 年 12 月 1 日星期六 10:30:44:控制设备硬件:0 2012 年 12 月 …
我有一个内部硬盘,当我尝试在 Nautilus 中安装它的两个分区中的任何一个时,会出现此错误,而我的主硬盘工作正常。
当我使用磁盘安装它时,它可以工作,但在 Nautilus 中卸载会出现相同的错误。mount也有效。
dmesg并且 syslog 没有显示什么特别的,所以我不知道去哪里寻找相关的日志。我希望有人可以就这个问题为我提供一些提示。
我将外部屏幕连接到我的笔记本电脑,但我的桌面并没有像大约一年前那样自动扩展到它(旧版本的 Ubuntu)。
我去了显示设置。屏幕列在那里(正确的分辨率、品牌名称等)。但是,当我将开关置于“打开”并单击“应用”时,出现此错误:
未能应用配置:%s GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: 在路径 /org/gnome/SettingsDaemon/XRANDR 的对象上没有这样的接口 `org.gnome.SettingsDaemon.XRANDR_2'
几个月以来一直如此,但我真的很想能够再次使用外部屏幕/投影仪。
有任何想法吗?
谢谢。
安装 Konquerer 并重新启动我的笔记本电脑后,我在尝试从终端中以 root 用户身份打开、编辑或访问文件时出现以下错误(这对我来说是存在的)。
root@linuxBox:/home/v2r#
gnome-open /home/(gnome-open:2686):GConf-警告**:客户端无法连接到 D-BUS 守护进程://bin/dbus-launch 异常终止,并出现以下错误:未指定协议自动启动错误:X11 初始化失败。
GConf 错误:没有 D-BUS 守护进程在运行
root@linuxBox:/home/v2r# 未指定协议 无法解析参数:无法打开显示:
此外,似乎 dbus 没有正确安装/bin/并/usr/bin/
查看屏幕截图:
我将如何解决这个问题并提前谢谢你?!!!
感谢您的回答 SirCharlo!它根本不能解决问题。请注意,它只发生在 bee root 时!
root@linuxBox:/home/v2r#
gnome-open /home/(gnome-open:5170): GConf-WARNING **: Client failed to connect to the D-BUS daemon: Failed to connect to socket /tmp/dbus-2RdCUjrZ9k: Connection denied GConf Error: No D-BUS daemon running
root@linuxBox:/home/v2r# 未指定协议 无法解析参数:无法打开显示:
在 Ubuntu 14.04 中,我曾经使用以下命令以没有 root 权限的用户身份挂起计算机:
dbus-send --system --print-reply --dest="org.freedesktop.UPower" \
/org/freedesktop/UPower org.freedesktop.UPower.Suspend
Run Code Online (Sandbox Code Playgroud)
不幸的是,在 Ubuntu 16.04 中这不再起作用,我收到一条错误消息:
错误 org.freedesktop.DBus.Error.UnknownMethod: 没有这样的方法“暂停”
显然已经发生了一些变化,那么现在正确的命令是什么?
我正在尝试使用dbus-monitor来尝试了解 dbus 在 Ubuntu 环境中的工作方式。在这方面我有几个问题:
你能告诉我如何正确阅读以下内容吗?我了解大意,但不了解细节。
signal sender=:1.1948 -> dest=(null destination) serial=1829990 path=/org/ayatana/menu/DA00003; interface=org.ayatana.dbusmenu; member=ItemPropertyUpdated
int32 23
string "enabled"
variant boolean true
method call sender=:1.6 -> dest=org.freedesktop.Notifications serial=1399 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications;
member=GetCapabilities
Run Code Online (Sandbox Code Playgroud)
我知道第一个是信号,而第二个是方法。目的地是否意味着信号可以有特定的接收器/插槽?什么是会员?信号后面的列表项是信号中传递的参数吗?什么是发件人和连续出版物?
我注意到音量控制和通知之间的关系。从我从 dbus-monitor 输出中读到的
method call sender=:1.6 -> dest=org.freedesktop.Notifications serial=1400 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
string "gnome-settings-daemon"
uint32 0
string "notification-audio-volume-medium"
string " "
string ""
array [
]
array [
dict entry(
string "value"
variant int32 38
)
dict entry( …Run Code Online (Sandbox Code Playgroud)ssh与 X11 转发一起使用时,我在运行 gui 应用程序时收到各种错误和警告。
例如,每当我运行gitg 时,都会收到以下警告:
** (gitg:15904): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-ychCoQcrqT: Connection refused
Run Code Online (Sandbox Code Playgroud)
除了丑陋之外,这是否表明任何真正的错误?
我在运行evince 时收到相同的警告:
** (evince:16634): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-ychCoQcrqT: Connection refused
Run Code Online (Sandbox Code Playgroud)
...或eog:
** (eog:16872): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-ychCoQcrqT: Connection refused
Run Code Online (Sandbox Code Playgroud)
等等。
也许值得一提:我从 12.04 连接到(是的,不受支持)13.04。