aboutsummaryrefslogtreecommitdiffstats
path: root/hm/soispha/conf/firefox/package.nix
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-10-21 22:30:59 +0200
committerSoispha <soispha@vhack.eu>2023-10-21 22:30:59 +0200
commit27a254a27df47cac88ce8053b4efe575cf9c481e (patch)
tree5441124451062b275592bf798e9da88f10851f26 /hm/soispha/conf/firefox/package.nix
parentfix(hm/conf/firefox/scr/extensions): Add required 'default_area' (diff)
downloadnixos-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.nix32
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