Flatpak版Firefoxを使う

Ubuntu方面でFirefoxがSnapパッケージで提供されることになって物議を醸していますが、そんな騒動の中、deb版からFlatpak版Firefoxに乗り換えました。
基本的には問題なく利用できますが、KDE環境ではフォントの表示などがデスクトップの設定を反映せず格好悪かったので修正したメモです。
GNOME拡張機能インストール問題などFlatpak版Firefoxにまつわる事は修正メモの下にまとめています。
一部サイトでビットマップフォントが使われる
サイトを見ていると一部のサイトでビットマップフォントが使われて違和感があります。MozillaのBugzillaに報告されているので直ると思いますが、これはfontconfigにビットマップフォント無効を強制すると直ります。
Flatpak版Firefoxのサンドボックス環境設定は、~/.var/app/org.mozilla.firefox/config/
以下にあるので、このなかにfontconfigの設定を追加します。サンドボックス環境にfontconfigの設定のフォルダを追加して、fonts.confに設定を書き込みます。
$ mkdir ~/.var/app/org.mozilla.firefox/config/fontconfig/
$ nano ~/.var/app/org.mozilla.firefox/config/fontconfig/fonts.conf
fonts.confには以下の内容を書き込みます。
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<!-- Disable bitmap fonts. -->
<selectfont><rejectfont><pattern>
<patelt name="scalable"><bool>false</bool></patelt>
</pattern></rejectfont></selectfont>
<match target="pattern">
<test name="lang"><string>ja</string></test>
<test name="family"><string>serif</string></test>
<edit name="family" mode="prepend">
<string>Noto Serif CJK JP</string>
</edit>
</match>
<match target="pattern">
<test name="lang"><string>ja</string></test>
<test name="family"><string>sans-serif</string></test>
<edit name="family" mode="prepend">
<string>Noto Sans CJK JP</string>
</edit>
</match>
<match target="pattern">
<test name="lang"><string>ja</string></test>
<test name="family"><string>mono</string></test>
<edit name="family" mode="prepend">
<string>Noto Sans MONO CJK JP</string>
</edit>
</match>
</fontconfig>
GTKテーマ設定が反映されない
KDE環境で設定しているGTKテーマとフォントの設定が反映されていないので反映させます。
これはホームの設定~/.config/gtk-3.0/
を前述のサンドボックス環境設定が保存されている~/.var/app/org.mozilla.firefox/config/
にコピーすればOKです。
$ cp ~/.config/gtk-3.0/ ~/.var/app/org.mozilla.firefox/config/
手で設定するなら~/.var/app/org.mozilla.firefox/config/gtk-3.0/settings.ini
に下のような感じで設定を書けばOKです。
[Settings]
gtk-application-prefer-dark-theme=false
gtk-font-name=Noto Sans CJK JP, 10
gtk-theme-name=Breeze
あとで気がつきましたが、It's FOSSの記事のようにoverrideでFlatpak環境全体で上書きするといいのかもしれません。
$ sudo flatpak override --filesystem=$HOME/.themes
- How to Apply GTK Themes on Flatpak Applications: https://itsfoss.com/flatpak-app-apply-theme/
Firefox自体のデフォルトフォント設定を変更
これは好みの問題ですが、Linux版FirefoxのデフォルトフォントはIPA Pゴシックです。これは格好悪いので変更します。
Firefox右側のメニューから「設定」を開きます。設定内の「一般」の少し下に「規定のフォント」があるので、「詳細設定」を開きます。これをIPAゴシックからNoto CJKフォントに変更します。
こまごまとしたFirefoxの話
ここから下は、Firefoxについてのこまごまとした話です。
deb版FirefoxとFlatpak版Firefoxの違い
Debian配布版(deb)とFirefox配布版(Flatpakなど)の違いは、DRM(Widevine)の扱いが少し違います。Netflixは大丈夫ですが、AbemaTV(Queendom2、超面白いです)では延々リロードされるので気がつくと思います。この辺の挙動が怪しいのでFlatpak版に乗り換えました。
Debian Stableの場合は、Firefox ESRがインストールされています。最新版を使いたい場合は、Mozillaが配布するFlatpak版やバイナリを使う必要があります。
Flatpak版Firefoxの設定ファイルなど
Flatpak版Firefoxの設定がある場所は以下です。設定を変更する場合の参考にしてください。
- Firefoxのプロファイル:
~/.var/app/org.mozilla.firefox/.mozilla/firefox
- Firefoxサンドボックス環境設定:
~/.var/app/org.mozilla.firefox/config
GNOME拡張機能インストールの問題
これを書く前にGNOMEで確認したところ、上に書いたフォントとGTKの問題は無いようです。ですが、Snap版同様にFirefoxからGNOME拡張機能のインストールができません。Flatpakもサンドボックス環境なので、これは仕方ないと思います。
それに対処するなら、FlatpakからExtension Managerをインストールして使うのがスマートだと思います。
gihyo.jpに「Snap版Firefoxを使用しないでやり過ごす」という記事がありますが、拡張機能のためにわざわざブラウザが変えるのでスマートではなく、正直、クッソ面倒くさいのでExtension Managerを使うほうがスッキリすると思います。