Пользовательский протокол в Linux?

Я пытаюсь перенести один из моих проектов хобби на linux. Предпочтительно для Mono, поскольку он написан на С#. Но я также смотрю на Python.

Одна из особенностей приложения заключается в том, что ему необходимо связать с пользовательским протоколом, поэтому приложение вызывается, когда пользователь нажимает на него такие ссылки на веб-сайте приложения:

myapp://module/action

Пользовательский протокол, например this, this и это.

Как это можно сделать в системах linux/unix? Можно ли связать общесистемный обработчик, например, в Windows? или он должен быть зависимым от браузера?

Невозможно найти что-либо в Google. И я совершенно не знаю, что делать с Linux.

Мне нужны указатели. Спасибо!

Ответы

Ответ 1

В идеальной ситуации такое поведение обрабатывается средой рабочего стола (KDE, GNOME, XFCE), и Firefox уважает эти настройки - он должен делать это на Ubuntu, Fedora и OpenSUSE, по крайней мере. YMMV:

Интеграция нового обработчика схем URI в GNOME и Firefox

Добавление обработчика протокола для firefox (KDE)

Ответ 2

Ручной способ сделать это для firefox:

open firefox
type in about:config to location bar
add new string
name:  network.protocol-handler.app.myapp
value: /path/to/program

Ответ 3

Не будет ни одного ответа, потому что в лучшем случае это произойдет на уровне менеджера окон X. В общем, вам понадобится некоторый фрагмент кода, который вы можете ввести в свой путь, и связать имя с протоколом. Просмотрите страницу about: config, в которой настроены обработчики.

Что действительно все, что делает Windows, это просто то, что происходит в реестре.

Это выглядит как достойный drescription для Firefox.

Ответ 4

Можно ли связать общесистемный обработчик, например, в Windows? или он должен быть зависимым от браузера?

Он должен быть зависимым от браузера. Нет никакого способа перекрестного браузера по связыванию обработчиков URL в Linux.