デフォルトブラウザを変更する

今回は、「Midori プライベートブラウジング」をデフォルトブラウザに設定してみたいと思います。

目次

デフォルトブラウザの設定

xdg-mime コマンドを使います。

現状確認

$ xdg-mime query default text/html
gedit.desktop

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

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

設定

$ xdg-mime default midori-private.desktop x-scheme-handler/http
$ xdg-mime default midori-private.desktop x-scheme-handler/https

確認

$ xdg-mime query default text/html
gedit.desktop

$ xdg-mime query default x-scheme-handler/http
midori-private.desktop

$ xdg-mime query default x-scheme-handler/https
midori-private.desktop

追加設定

以下も設定しておいたほうが無難です。

Midori プライベートブラウジング(シークレットモード)を起動するシェルスクリプトを作成します。

パス確認

$ which midori
/usr/bin/midori

$ which x-www-browser
/usr/bin/x-www-browser

シェル作成

今回は、midori-private.sh を作成しました。
作成後、実行権限を付与しておきます。

$ vi midori-private.sh

$ ls -lh midori-private.sh 
-rw-rw-r-- 1 link link 26  7月 16 20:51 midori-private.sh
$ chmod 0755 midori-private.sh 

$ cat midori-private.sh 
/usr/bin/midori --private

シェル登録

update-alternatives コマンドの引数 --install を使って登録します。

構文 : --install <リンク> <名前> <パス> <優先度>

構文 リンク 名前 パス 優先度
解説 リンクのパス config名 コマンドの実パス 優先度
/usr/bin/x-www-browser x-www-browser /home/link/midori-private.sh 10
$ sudo update-alternatives --install /usr/bin/x-www-browser x-www-browser /home/link/midori-private.sh 10

確認&登録

update-alternatives コマンドの引数 --config を使ってデフォルトブラウザに設定します。

$ sudo update-alternatives --config x-www-browseralternative x-www-browser (/usr/bin/x-www-browser を提供) には 11 個の選択肢があります。

選択肢    パス                         優先度  状態
------------------------------------------------------------
0            /usr/bin/google-chrome-stable   200       自動モード
* 1            /home/link/midori-private.sh    10        手動モード
2            /usr/bin/chromium-browser       40        手動モード
3            /usr/bin/epiphany-browser       85        手動モード
4            /usr/bin/firefox                40        手動モード
5            /usr/bin/google-chrome-stable   200       手動モード
6            /usr/bin/konqueror              30        手動モード
7            /usr/bin/midori                 39        手動モード
8            /usr/bin/opera                  120       手動モード
9            /usr/bin/palemoon               40        手動モード
10           /usr/bin/qupzilla               80        手動モード
11           /usr/bin/vivaldi-stable         200       手動モード

現在の選択 [*] を保持するには <Enter>、さもなければ選択肢の番号のキーを押してください: 

失敗編

シンボリックリンクを管理してデフォルトのコマンドを決定する update-alternatives コマンドを使いました。

update-alternatives 概要

$ update-alternatives --help
使い方: update-alternatives [<オプション> ...] <コマンド>

コマンド:
  --install <リンク> <名前> <パス> <優先度>
    [--slave <リンク> <名前> <パス>] ...
                           システムに alternatives のグループを追加する
  --remove <名前> <パス>   <名前> のグループ alternative から <パス> を削除する
  --remove-all <名前>      alternatives システムから <名前> のグループを削除する
  --auto <名前>            マスターリンク <名前> を、自動モードに切り替える
  --display <名前>         <名前> グループについての情報を表示する
  --query <名前>           --display <名前> の機械解析向けバージョン
  --list <名前>            <名前> グループのすべてのターゲットを表示する
  --get-selections         マスター alternative 名およびその状態を一覧する
  --set-selections         標準入力から alternative 状態を読み込む
  --config <名前>          <名前> グループの alternatives を表示し、ユーザに
                           使用したいものを尋ねる
  --set <名前> <パス>      <名前> の alternative として <パス> を設定する
  --all                    すべての alternatives に対して --config を呼び出す

<リンク> は /etc/alternatives/<名前> を指すシンボリックリンクです。
  (例: /usr/bin/pager)
<名前> はこのリンクグループのマスター名です。
  (例: pager)
<パス> は alternative ターゲットファイルのうちの 1 つの場所です。
  (例: /usr/bin/less)
<優先度> は整数です; より大きな数を持つ選択肢は、自動モードにおいてより高い
優先度を持ちます。

オプション:
  --altdir <ディレクトリ>    alternatives ディレクトリを変更する
  --admindir <ディレクトリ>  管理ディレクトリを変更する
  --log <ファイル>           ログファイルを変更する
  --force                    alternative リンク付きのファイルの置換を許容する
  --skip-auto                自動モードにおいて、正しく設定された alternatives
                             のプロンプトをスキップする (--config にのみ関連)
  --verbose                  冗長操作として、多く出力する
  --quiet                    静かな操作として、最小限の出力にする
  --help                     このヘルプを表示する
  --version                  バージョン番号を表示する

状態の確認・設定

状態の確認

update-alternatives コマンドの引数 --get-selections を使うと、状態を一覧できます。

$ update-alternatives --get-selections | grep browser
gnome-www-browser              auto     /usr/bin/vivaldi-stable
infobrowser                    auto     /usr/bin/info
x-www-browser                  auto     /usr/bin/vivaldi-stable

状態の設定

update-alternatives コマンドの引数 --config を使うと設定できます。

状況に応じて、以下を設定します。

  • x-www-browser
  • gnome-www-browser
$ sudo update-alternatives --config x-www-browser
alternative x-www-browser (/usr/bin/x-www-browser を提供) には 10 個の選択肢があります。

選択肢    パス                         優先度  状態
------------------------------------------------------------
* 0            /usr/bin/vivaldi-stable         200       自動モード
1            /usr/bin/chromium-browser       40        手動モード
2            /usr/bin/epiphany-browser       85        手動モード
3            /usr/bin/firefox                40        手動モード
4            /usr/bin/google-chrome-stable   200       手動モード
5            /usr/bin/konqueror              30        手動モード
6            /usr/bin/midori                 39        手動モード
7            /usr/bin/opera                  120       手動モード
8            /usr/bin/palemoon               40        手動モード
9            /usr/bin/qupzilla               80        手動モード
10           /usr/bin/vivaldi-stable         200       手動モード

現在の選択 [*] を保持するには <Enter>、さもなければ選択肢の番号のキーを押してください: 

結果

上記では、設定できませんでした。