at 25.11-pre 1.2 kB view raw
1{ 2 config, 3 lib, 4 pkgs, 5 ... 6}: 7 8{ 9 10 options.programs.browserpass.enable = lib.mkEnableOption "Browserpass native messaging host"; 11 12 config = lib.mkIf config.programs.browserpass.enable { 13 environment.etc = 14 let 15 appId = "com.github.browserpass.native.json"; 16 source = part: "${pkgs.browserpass}/lib/browserpass/${part}/${appId}"; 17 in 18 { 19 # chromium 20 "chromium/native-messaging-hosts/${appId}".source = source "hosts/chromium"; 21 "chromium/policies/managed/${appId}".source = source "policies/chromium"; 22 23 # chrome 24 "opt/chrome/native-messaging-hosts/${appId}".source = source "hosts/chromium"; 25 "opt/chrome/policies/managed/${appId}".source = source "policies/chromium"; 26 27 # vivaldi 28 "opt/vivaldi/native-messaging-hosts/${appId}".source = source "hosts/chromium"; 29 "opt/vivaldi/policies/managed/${appId}".source = source "policies/chromium"; 30 31 # brave 32 "opt/brave/native-messaging-hosts/${appId}".source = source "hosts/chromium"; 33 "opt/brave/policies/managed/${appId}".source = source "policies/chromium"; 34 }; 35 programs.firefox.nativeMessagingHosts.packages = [ pkgs.browserpass ]; 36 }; 37}