From 27a254a27df47cac88ce8053b4efe575cf9c481e Mon Sep 17 00:00:00 2001 From: Soispha Date: Sat, 21 Oct 2023 22:30:59 +0200 Subject: feat(hm/conf/firefox): Use the policy.json file for configs --- hm/soispha/conf/firefox/package.nix | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 hm/soispha/conf/firefox/package.nix (limited to 'hm/soispha/conf/firefox/package.nix') diff --git a/hm/soispha/conf/firefox/package.nix b/hm/soispha/conf/firefox/package.nix new file mode 100644 index 00000000..8f9d09c0 --- /dev/null +++ b/hm/soispha/conf/firefox/package.nix @@ -0,0 +1,32 @@ +# taken from the NixOS Firefox module: https://github.com/NixOS/nixpkgs/blob/7c9cc5a6e5d38010801741ac830a3f8fd667a7a0/nixos/modules/programs/firefox.nix +{ + config, + lib, + pkgs, + # options + autoConfig ? "", + extraNativeMassagingHosts ? [], + wrapperConfig ? {}, + extraPolicies ? {}, + base_package ? pkgs.firefox, + ... +}: let + pkg = base_package.override (old: { + inherit extraPolicies; + extraPrefs = autoConfig; + extraNativeMessagingHosts = + old.extraNativeMessagingHosts + or [] + ++ extraNativeMassagingHosts; + cfg = let + # copy-pasted from the wrapper; TODO: figure out fix + applicationName = base_package.binaryName or (lib.getName base_package); + + oldCfg = old.cfg or {}; + nixpkgsConfig = pkgs.config.${applicationName} or {}; + optionConfig = wrapperConfig; + in + oldCfg // nixpkgsConfig // optionConfig; + }); +in + pkg -- cgit 1.4.1