centos - 在 centos,opensuse,通过x 方案处理程序设置协议处理程序

  显示原文与译文双语对照的内容

我的需求是在linux系统中使用 Firefox 运行定制协议处理程序。

我已经在Ubuntu中成功地添加了协议处理程序,在/usr/share/applications. 中创建 myapp.desktop 文件,内容如下。


[Desktop Entry]
Name=myapp
Comment= My Custom protocol handler
Exec=/path/to/my/application %U
Icon=myicon
Terminal=0
Type=Application
X-MultipleArgs=True
MimeType=x-scheme-handler/myapp
Encoding=UTF-8
Categories=Network;Application;

然后我运行 update-desktop-database 。 所有设置和我都能够在Ubuntu的Firefox 浏览器中键入 myapp://,或者在Fedora中进行调用。

同样的程序在Centos或者Opensuse中不工作。 我在centos和opensuse中尝试了以下东西,但它没有工作。


gconftool-2 -t string -s/desktop/gnome/url-handlers/myapp/command"/path/to/my/app %U"
gconftool-2 -s/desktop/gnome/url-handlers/myapp/needs_terminal false -t bool
gconftool-2 -t bool -s/desktop/gnome/url-handlers/myapp/enabled true

请帮助使协议处理程序在centos和opensuse中工作。 我正在使用 centos-6.2 和 opensuse 11.2

先谢谢了。

时间: 原作者:

我找到了原因。 运行gconftool会添加url处理程序。 我作为rpm脚本脚本的一部分运行这些命令,它接受 root 特权。 因此,url处理程序没有注册到用户。 在用户手动运行时,Firefox 可以在浏览器中键入 myapp://时调用 myapp 。

原作者:
...