arkenfox user.jsは、Firefoxのプライバシーと耐フィンガープリンティング性能を強化するための設定テンプレートファイルです。user.js本体に加えて、設定の更新を助けるupdaterスクリプトと、不要になった設定を掃除するprefsCleanerスクリプト、トラブル調査用のコンソールスクリプトが同梱されています。アプリではなく、Firefoxのプロファイルフォルダに置く設定ファイル群という位置づけです。
仕組みはシンプルです。user.jsの中にはuser_pref関数の呼び出しが数百行並んでおり、これをFirefoxのプロファイルフォルダに置いて起動すると、about:configの各設定値が一括で書き換えられます。ファイルは0100番台のSTARTUPから9999番台のDEPRECATEDまで番号付きセクションに分かれ、各設定にコメントで意図と副作用が書かれています。独自の変更はuser-overrides.jsという別ファイルに書き、updater.sh または updater.bat を実行すると最新版のuser.jsをGitHubから取得し、overridesをその末尾に自動マージしてバックアップも作成します。時間が経つとFirefox側のprefs.jsに「現在は使われていない古い設定」が残るため、prefsCleaner.sh または .bat を実行すると、user.jsに存在する設定名と照合してprefs.jsから該当行を削除します。scratchpad-scriptsのjsファイルは about:configのWebコンソールに直接貼り付けて実行する補助スクリプトで、廃止された設定のリセットやどの設定がサイトを壊しているかの特定に使います。CIとしてTravisでacornによるuser.jsの構文チェックも行われています。
- STEP 01
Firefoxのプロファイルフォルダにuser.jsをコピーして再起動すると、about:configの警告表示が消え、テレメトリや自動補完などの設定が一括で変更されているのを確認できます。
- STEP 02
最初の起動直後は一部のサイトでログインやフォーム保持が効かなくなるなど、設定ファイルのコメントに書かれている「意図的な機能低下」を実際に体感します。
- STEP 03
自分好みの設定をuser-overrides.jsに書いてから updater.sh -s を実行すると、GitHubの最新user.jsを取得してoverridesを末尾にマージし、旧ファイルをバックアップしてくれます。
- STEP 04
しばらく使った後にprefsCleaner.shを実行すると、prefs.jsのバックアップが作られたうえで、user.jsに存在する設定名と一致する行がprefs.jsから削除され、無効化された設定が初期値に戻ります。
- STEP 05
特定のサイトが動かない場合はabout:configのWebコンソールにtroubleshooter.jsを貼り付けて実行し、どの設定が原因かを1つずつ洗い出す作業を行います。
手元に残るのは、ブラウザの振る舞いを数百項目にわたって制御する1本のuser.jsと、それを安全に更新・掃除するためのスクリプト群です。導入すればFirefoxの初期設定よりトラッキングやフィンガープリンティングへの耐性は高まりますが、代わりにいくつかのサイトで利便性が落ちるトレードオフを引き受けることになります。
設定項目はトレードオフだらけで、READMEにも「サイトの不具合は必ず起こる」と明記されており、壊れた場合は自分でuser-overrides.jsを調整する前提になっています。
ESR版Firefoxを使う場合はupdaterでの自動更新が非推奨で、overridesを手動で管理する必要があるとファイル内に注記があります。
Tor Browserなど他のGecko系ブラウザにそのまま適用すると逆効果になりうるとREADMEで明確に警告されています。
updater系スクリプトはroot権限での実行を拒否するなど安全策は取られていますが、インターネットからの自動ダウンロードを含むため実行前にスクリプト内容を確認する習慣が前提になります。
デスクトップ版Firefoxを使い、多少のサイト不具合を許容してでもトラッキング対策とフィンガープリンティング対策を強めたい人向けの定番テンプレートです。設定ファイルは番号付きセクションとコメントが整備され、updater・prefsCleaner・troubleshooterという運用一式が揃っているため、ファイル内容だけで動作の筋道は十分追えます。実際の挙動確認には自分のFirefox環境での起動が必要ですが、構造とコメントの充実度からこの判断は裏付けられています。