diff options
author | Soispha <soispha@vhack.eu> | 2023-10-21 22:30:59 +0200 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2023-10-21 22:30:59 +0200 |
commit | 27a254a27df47cac88ce8053b4efe575cf9c481e (patch) | |
tree | 5441124451062b275592bf798e9da88f10851f26 /hm/soispha/conf/firefox/package.nix | |
parent | fix(hm/conf/firefox/scr/extensions): Add required 'default_area' (diff) | |
download | nixos-config-27a254a27df47cac88ce8053b4efe575cf9c481e.tar.gz nixos-config-27a254a27df47cac88ce8053b4efe575cf9c481e.zip |
feat(hm/conf/firefox): Use the policy.json file for configs
Diffstat (limited to 'hm/soispha/conf/firefox/package.nix')
-rw-r--r-- | hm/soispha/conf/firefox/package.nix | 32 |
1 files changed, 32 insertions, 0 deletions
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 |