Как установить, какое приложение запускается с помощью xdg-open?


21

Я бегал update-alternativesтак же хорошо, как гномы preffered apps. И все указывают на то, что chromiumбраузер по умолчанию. Тем не менее, когда я запускаю Firefox запускается! Точно так же, а также запустить материал в Firefox вместо хрома.xdg-open http://askubuntu.comemacsbzr

Существуют ли дополнительные настройки, влияющие на функциональность xdg-open?

Что-то определенно сломано:

ОБНОВЛЕНИЕ
Я удалил Firefox:
альтернативы обновления - использует
браузер
Chromium Sensible-Browser - открывает браузер Chromium xdg-open & gnome-open - открывает с помощью Google-Chrome, который любезно говорит мне, что это не браузер по умолчанию

!!!!


Ответы:


7

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

альтернативный текст

Это должно работать, но если нет, читайте дальше:

В базе данных GConf есть несколько ключей, которые определяют, какой браузер запускается xdg-open:

  • /desktop/gnome/url-handlers/unknown/command
  • /desktop/gnome/url-handlers/http/command
  • /desktop/gnome/url-handlers/https/command
  • /desktop/gnome/url-handlers/about/command

Убедитесь, что они все установлены правильно:

  • Хит Alt+F2
  • Войти gconf-editor
  • Перейдите к вышеуказанным клавишам, они должны быть установлены на /usr/bin/chromium-browser %s.

альтернативный текст


Это лучше. Я удалил пакет Firefox и угадайте, что? $ xdg-mime query default text/html firefox.desktop
Дима

5

В моей ситуации я установил Chromium и сделал его по умолчанию. До этого Chrome был браузером по умолчанию.

Я попробовал все, что смог сделать: настроить браузер Chromium по умолчанию, изменить настройки gconf для запуска Chromium с переменной % U ( /ubuntu//a/41085/94263 ), изменить альтернативные варианты использования Chromium по умолчанию x-www -browser ( /ubuntu//a/24052/94263 ), но ничего не помогло, xdg-open открыл новое окно Chromium с начальной страницей и не смог открыть данную ссылку, разумный браузер открыл Chrome. Я попытался очистить Chrome (Chromium был автоматически установлен по умолчанию и автоматически в альтернативах обновления ) и установить его снова, потому что мне нужна Pepper flash оттуда, и он стал браузером по умолчанию x-www-browserАльтернатива снова и снова была открыта с помощью команды sensible-browser . Затем я погуглил несколько страниц и обратил внимание на приоритет, а также обнаружил, что в / etc / alternatives / есть символическая ссылка gnome-www-browser и там по умолчанию используется google-chrome . Для Chrome приоритет был установлен на 200, а для Chromium - 40 . Приоритет Google Chrome выше, поэтому утилита update-альтернатив устанавливает его как веб-браузер по умолчанию автоматически как «лучшую версию».

Я удалил и Chrome, и Chromium из x-www-browser и gnome-www-browser :

sudo update-alternatives --remove x-www-browser /usr/bin/google-chrome
sudo update-alternatives --remove x-www-browser /usr/bin/chromium-browser
sudo update-alternatives --remove gnome-www-browser /usr/bin/google-chrome
sudo update-alternatives --remove gnome-www-browser /usr/bin/chromium-browser

Затем я установил новые альтернативы с другими приоритетами:

sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/google-chrome 40
sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /usr/bin/chromium-browser 200
sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /usr/bin/google-chrome 40
sudo update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /usr/bin/chromium-browser 200

Я не знаю, являются ли приоритеты «40» и «200» по умолчанию для всех компьютеров, иначе у вас будут другие цифры. Лучше посмотреть, введя

sudo update-alternatives --display x-www-browser
sudo update-alternatives --display gnome-www-browser

Upd. Я пытался сделать то же самое в совершенно другой системе, и приоритеты были такими же, как здесь.

UPD2. Если вы запустите Google-Chrome только один раз, он вернется к 200, но браузер Chromium останется по умолчанию.

Это сработало для меня. Chromium был установлен по умолчанию автоматически, и браузер sensible-browser запускает Chromium. Но все же xdg-open открывает новое пустое окно.


3

Все вышеприведенные ответы в основном правильны, в зависимости от того, что вы делаете и как программы, которые вы используете, вызывают вещи. Для меня проблема была в том, что мой эмулятор терминала (Tilix) все еще открывал не тот браузер (Firefox вместо Chrome), а xdg-open foobar.htmlтакже открывал не тот браузер. Хром сказал в настройках:

В конце концов я понял, что есть также xdg-mime:

$ xdg-mime query default x-scheme-handler/http
firefox.desktop
$ xdg-mime query default x-scheme-handler/https
firefox.desktop

Это не правильно, поэтому я изменил их на:

$ xdg-mime default google-chrome.desktop 'x-scheme-handler/http'
$ xdg-mime default google-chrome.desktop 'x-scheme-handler/https'

Тогда есть также привязки для 'text / html', которые я также изменил:

$ xdg-mime default google-chrome.desktop 'text/html'

Это в сочетании с проверкой правильности следующих параметров:

  • BROWSERпеременная среды
  • sensible-browser ( /usr/bin/sensible-browserскрипт-обёртка, который пытается запустить некоторые другие элементы в этом списке)
  • gnome-www-browser ( /usr/bin/gnome-www-browserсимволическая ссылка на /etc/alternatives/gnome-www-browser)
  • x-www-browser ( /usr/bin/x-www-browserсимволическая ссылка на/etc/alternatives/x-www-browser
  • www-браузер ( /usr/bin/www-browserсимволическая ссылка на /etc/alternatives/www-browser)
  • все «альтернативные» записи (см. update-alternatives --get-selectionsсписок), которые указывают на браузер.
  • База данных GConf (см. Ответ Исайи)

Это, наконец, открывает правильный браузер для большинства ситуаций на моем рабочем столе. 2018 год, безусловно, год Linux на рабочем столе.


Эти xdg-mimeкоманды именно то , что мне нужно! Я использую Manjaro-i3, поэтому у меня вообще нет рабочего стола. (а GConfи update-alternativesответы выше не применяются)
codermonkeyfuel

0

sensible-browser это команда для запуска веб-браузера по умолчанию из терминала.


Конечно. Но я понятия не имею, что $bzr lp-openиспользует за моей спиной. Но что бы он ни использовал, Firefox выбирается. Я думаю, что он использует xdg-open, который также выбирает Firefox.
Дима

После использования DoR-исправлений chromium теперь открывается браузером sensible-browser.
Дима

0

Для меня решением было запустить эти две команды. Тогда вам остается только выбрать нужный браузер из списка.

sudo update-alternatives --config x-www-browser
sudo update-alternatives --config gnome-www-browser

Источники: Launchpad , Bugzilla

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.