about summary refs log tree commit diff stats
path: root/modules/home/conf/firefox/package.nix
blob: f7e4319bc0c331805445b5f6ebf877bd8d3eb429 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# taken from the NixOS Firefox module: https://github.com/NixOS/nixpkgs/blob/7c9cc5a6e5d38010801741ac830a3f8fd667a7a0/nixos/modules/programs/firefox.nix
{
  config,
  lib,
  pkgs,
  # options
  autoConfig ? "",
  extraNativeMessagingHosts ? [],
  wrapperConfig ? {},
  extraPolicies ? {},
  base_package ? pkgs.firefox,
}: let
  pkg = base_package.override (old: {
    extraPrefsFiles =
      (old.extraPrefsFiles or [])
      ++ [
        (pkgs.writeText "autoConfig.js" autoConfig)
      ];
    nativeMessagingHosts = old.nativeMessagingHosts or [] ++ extraNativeMessagingHosts;
    cfg = (old.cfg or {}) // wrapperConfig;
    extraPoliciesFiles =
      (old.extraPoliciesFiles or [])
      ++ [
        (
          pkgs.writeText "policies.json" (builtins.toJSON extraPolicies)
        )
      ];
  });
in
  pkg