установка обработчика протокола с помощью x-scheme-handler в centos, opensuse

Мое требование - запустить собственный обработчик протокола с использованием firefox в системах Linux.

Я успешно добавил обработчик протокола в Ubuntu, создав файл myapp.desktop в /usr/share/applications. Содержание примерно такое.

[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. Все готово, и я смог набрать myapp:// в браузере firefox Ubuntu или в Fedora, и myapp был вызван.

Пока эта же процедура не работает в 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.

Заранее спасибо.


person ravi.chunduru    schedule 15.08.2012    source источник
comment
в первой команде, которую я выполнил, есть опечатка. Это был gconftool-2 -t string -s /desktop/gnome/url-handlers/myapp/command /path/to/my/app %s   -  person ravi.chunduru    schedule 16.08.2012


Ответы (1)


Я разобрался в причине. Запуск gconftool добавляет обработчик URL. Я запускал эту команду как часть почтового скрипта rpm, который использует привилегии root. Следовательно, обработчик URL не был зарегистрирован пользователем. После запуска вручную от имени пользователя firefox может вызывать myapp, когда я набираю myapp:// в браузере.

person ravi.chunduru    schedule 16.08.2012
comment
Хорошо, но как добавить его для всех пользователей? - person totaam; 06.07.2018