インターネット
 Computer >> コンピューター >  >> ネットワーキング >> インターネット

Firefoxが既定ブラウザに設定できない問題の解決法(KDE Plasma・KDE neon編)

以前、KDE neonでNetwork Managerまわりのトラブルに悩まされた話をしましたが、あの日私が直面した問題はそれだけではありませんでした。VPNのテスト作業の一環として、時間を節約するために、Kubuntuで使っていた堅牢化(hardened)されたFirefoxのプロファイルをneon環境へコピーしたのです。広告ブロック、ユーザーエージェント、ポップアップブロック、WebRTC関連の設定など、すべてを一からやり直す気力はありませんでした。実際、Firefoxの優れた点の一つは、プロファイルをマシン間で簡単にコピーできることで、私自身も過去に何度も成功させてきた経験があります。

ところが、Firefoxが起動するたびに「既定のブラウザにしますか?」としつこく聞いてくるようになったのです。どうやら、私の選択が保存されていないようです。さらに悪いことに、ブラウザ設定内の「既定にする(Make default)」ボタンをクリックしても何も起こりません。修正が必要な状況です。

Firefoxが既定ブラウザに設定できない問題の解決法(KDE Plasma・KDE neon編)

他にも試したこと

さて、奇妙な問題に直面することになりました。最初は、プロファイルのインポートが原因だと考えました。「既定にする」ボタンはまったく反応せず、Plasmaのアプリケーション設定からファイルの関連付けを変更しても、Firefoxは相変わらずメッセージを表示し続け、状態は変わりません。

Firefoxが既定ブラウザに設定できない問題の解決法(KDE Plasma・KDE neon編)

Firefoxが既定ブラウザに設定できない問題の解決法(KDE Plasma・KDE neon編)

そこでFirefoxをリフレッシュ(初期化)してみましたが、効果なし。さらにブラウザを完全にアンインストールし、既存のプロファイルもすべて削除しましたが、それでもシステムはFirefoxを既定ブラウザとして受け入れてくれません。これはPlasma側の奇妙な問題のようです。しかし、ネット上の情報を見ると、この問題はさまざまなOSで発生している模様。映画『Dirty Rotten Scoundrels』のエミール・シャフハウゼン博士の言葉を借りれば、「もっと厳格な手段が必要だ」というわけです。

内部の仕組みと代替策

目標は、Firefoxを既定ブラウザにし、かつ厄介なダイアログを表示させないことです。後者は簡単に解決できます。設定のチェックボックスを外せば、二度と聞かれることはありません。しかし、Firefoxが本来あるべき動作をするようにする必要もあります。

そのための最初の確認ポイントは、~/.config/mimeapps.listです。このファイルには、(ユーザーごとの)ファイルタイプとプログラムの関連付けが記録されており、システムがファイルをクリックした際に正しいアプリケーションを起動できるようにしています。通常、このファイルには以下のような記述があるはずです:

[Added Associations]
video/mp4=vlc.desktop;

[Default Applications]
application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop
application/x-extension-shtml=firefox.desktop

ところが、私の環境ではFirefoxに関連するはずのエントリが次のように異なっていました:

application/x-extension-html=user-firefox-XXXXX.desktop

Firefoxが既定ブラウザに設定できない問題の解決法(KDE Plasma・KDE neon編)

調べてみると、リポジトリ版と手動ダウンロードのtarball版という複数のFirefoxが並行してインストールされている状況に焦点を当てたバグ報告を見つけました。手動でこの値を修正してブラウザを再起動してみましたが、効果はありませんでした。むしろ、なんらかの理由で「既定にする」ボタンを押すと、mimeapps.listにこの奇妙な関連付けが書き込まれることが判明。不可解です。

そこで、もう少し厳格な手段に踏み込むことにしました。鍵となるのはupdate-alternativesです。Ubuntu系システムには、さまざまな用途ごとのデフォルトプログラムを変更できるコマンドラインツールが用意されています。たとえば、www関連の操作における既定プログラム(ブラウザ)を変更できます。

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

Firefoxが既定ブラウザに設定できない問題の解決法(KDE Plasma・KDE neon編)

すると、システムはChromeが既定ブラウザになっていると報告してきました。私はそんな設定をした覚えがないので、これもKDE neon特有の奇妙な挙動なのでしょう。ともかく、自動モードから手動モード(選択肢2)に切り替えたところ、これでFirefoxが既定ブラウザになるはずです。以下のコマンドで確認できます:

xdg-open file.html

このコマンドは、HTMLファイルの既定ハンドラーとして設定されているプログラムを起動します。手動変更後は、ちゃんとFirefoxが起動しました。ブラウザの設定メニューでは依然として正しく表示されませんでしたが、システムとしての機能は期待どおりに動作しています。これで問題解決です。

まとめ

年齢を重ねるにつれ、経験を積み、自然とシニカルになっていくだけかもしれませんが、ソフトウェアの品質がどんどん低下しているという感覚は拭えません。安定性や堅牢性のある製品づくりへの労力は減り、華やかなバズワードや見かけ上の「イノベーションの速さ」に注力されるばかり。これはFirefoxに限った話ではなく、業界全体の傾向です。つまり、常識的で予測可能な動作を期待するユーザーは、あちこちで突発的な小さなバグに直面することになります。「抽象化こそがインタラクションである」――それが未来の姿なのでしょう。

とはいえ本題に戻ると、Firefoxユーザーの皆さん(ぜひそうあってほしいものですが)、Ubuntu系ディストロでブラウザ起動時に妙な挙動があり、既定ブラウザに設定できない場合は、update-alternativesツールを使えば手動で強制的に修正できます。今回取り上げた方法はいずれも、正常な機能の復元に役立つはずです。通常ならこんな問題は起こらないもので、この10年間で設定が保存されない事態に遭遇したのは、Linux MintとKDE neonのわずか数回程度です。でも、こういうことです。問題があるなら、解決すればいい。以上です。

ではまた。

  1. Firefox 4 vs Internet Explorer 9 徹底比較レビュー

    さあ、覚悟してください!こんな対決記事を書くことになるとは思いもしませんでしたが、いざ始めましょう。あらゆるサプライズは起こりうるものです。Microsoftが一流の高性能ブラウザを届けてくることも、その一つです。社内での厳しい指導と減給が効いたのでしょうか。さて数日前、Firefox 4ベータの詳細なプレビューが公開され、その翌日にはInternet Explorer 9ベータが登場しました。どちらも非常に期待できる製品です。Firefox 4は長い歴史を持つ優れたブラウザの系譜を受け継ぎ、従来の精神を保ちながらさらに進化を遂げています。一方、Internet Explorer 9は革命です

  2. Mozilla Prismとは?サイト固有ブラウザ(SSB)で実現する安全・快適なウェブ環境

    初めて「サイト固有ブラウジング」という言葉を耳にすると、「それは一体何? 普通のブラウジングとどう違うの?」と首をかしげる方も多いでしょう。サイト固有ブラウジング(略してSSB)とは、ウェブブラウザの1つのインスタンスで、たった1つのウェブサイトだけにアクセスするという概念です。つまり、SSBを起動すると、そのアプリは指定された特定のサイトにのみ接続し、それ以外には一切アクセスしません。これこそがPrismの核心です。「悪いアイデアでは?」と思われるかもしれませんが、決してそんなことはありません。その理由を順を追って説明しましょう。 セキュリティ面でのメリット クロスサイトスクリプティング(