at 23.11-beta 1.9 kB view raw
1{ config, lib, pkgs, ... }: 2 3let 4 inherit (lib) mdDoc mkEnableOption mkIf mkRenamedOptionModule teams; 5in 6 7{ 8 meta = { 9 maintainers = teams.gnome.members; 10 }; 11 12 imports = [ 13 # Added 2021-05-07 14 (mkRenamedOptionModule 15 [ "services" "gnome3" "chrome-gnome-shell" "enable" ] 16 [ "services" "gnome" "gnome-browser-connector" "enable" ] 17 ) 18 # Added 2022-07-25 19 (mkRenamedOptionModule 20 [ "services" "gnome" "chrome-gnome-shell" "enable" ] 21 [ "services" "gnome" "gnome-browser-connector" "enable" ] 22 ) 23 ]; 24 25 options = { 26 services.gnome.gnome-browser-connector.enable = mkEnableOption (mdDoc '' 27 native host connector for the GNOME Shell browser extension, a DBus service 28 allowing to install GNOME Shell extensions from a web browser 29 ''); 30 }; 31 32 config = mkIf config.services.gnome.gnome-browser-connector.enable { 33 environment.etc = { 34 "chromium/native-messaging-hosts/org.gnome.browser_connector.json".source = "${pkgs.gnome-browser-connector}/etc/chromium/native-messaging-hosts/org.gnome.browser_connector.json"; 35 "opt/chrome/native-messaging-hosts/org.gnome.browser_connector.json".source = "${pkgs.gnome-browser-connector}/etc/opt/chrome/native-messaging-hosts/org.gnome.browser_connector.json"; 36 # Legacy paths. 37 "chromium/native-messaging-hosts/org.gnome.chrome_gnome_shell.json".source = "${pkgs.gnome-browser-connector}/etc/chromium/native-messaging-hosts/org.gnome.chrome_gnome_shell.json"; 38 "opt/chrome/native-messaging-hosts/org.gnome.chrome_gnome_shell.json".source = "${pkgs.gnome-browser-connector}/etc/opt/chrome/native-messaging-hosts/org.gnome.chrome_gnome_shell.json"; 39 }; 40 41 environment.systemPackages = [ pkgs.gnome-browser-connector ]; 42 43 services.dbus.packages = [ pkgs.gnome-browser-connector ]; 44 45 programs.firefox.nativeMessagingHosts.packages = [ pkgs.gnome-browser-connector ]; 46 }; 47}