web-dev-qa-db-ja.com

NixOsでFirefoxポリシーを使用する方法/設定ファイルをNixパッケージに追加する方法は?

構成され、拡張機能を備えたFirefoxをNixOSにデプロイする必要があります。私はそれを宣言的に(configuration.nixで)行いたいのですが、home-managerを使いたくありません。

Firefoxは/nix/store/<hash>-firefox-unwrapped-74.0.1/lib/firefox/distribution/policies.jsonで設定を探します(straceで確認)。

したがって、質問:このファイルをFirefox nixpkgsパッケージに追加するにはどうすればよいですか? (ボーナス質問:Githubリポジトリからファイルを取得するにはどうすればよいですか?)

私はNixOsにかなり慣れていません。オーバーライド、オーバーレイ、ラッピングなどについてマニュアルを参照しましたが、なんとかやってのけることができませんでした。 firefoxfirefox-binfirefox-unwrappedの両方で試しました。

1
MemAllox

FirefoxのNix式を一瞥したところ、policies.jsonを提供する方法がわかりませんでした。

派生への入力としてポリシーを提供できるようにパッケージを変更すると、それは機能しますが、ユーザーはFirefoxをコンパイルする負担を強いられます。ファイルがビルド入力になるためです。

Firefoxが実行時にポリシーファイルを見つける場所を指定する方法を提供する場合、それは理想的な解決策かもしれません。それ以外の場合は、Firefoxパッケージにパッチを追加して、ソースコードを変更してポリシーファイルを検索することができます... /etc/firefox/policies.json。この変更が行われると、/etc/nixos/configuration.nixenvironmentNixOSモジュールを使用してポリシーを作成できます。このようなもの:

environment.etc."firefox/policies".text = "INSERT POLICY HERE";
0
Emmanuel Rosa