summary refs log tree commit diff
path: root/nixos/modules
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2018-01-19 13:40:42 +0100
committerGitHub <noreply@github.com>2018-01-19 13:40:42 +0100
commitd2d1a2dfbabaf723ebc2102a3c7baa5138303bc2 (patch)
tree13824f58f2d356b1a8fc58fd79b7f70c77387d76 /nixos/modules
parent899714ae964c3e446c2de081bf007ef238c9f3d6 (diff)
parent062cafab8cffa984f6e8b1a287d6a66c83238801 (diff)
downloadnixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.tar
nixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.tar.gz
nixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.tar.bz2
nixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.tar.lz
nixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.tar.xz
nixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.tar.zst
nixlib-d2d1a2dfbabaf723ebc2102a3c7baa5138303bc2.zip
Merge pull request #28882 from jtojnar/chrome-gnome-shell
chrome-gnome-shell: refactor
Diffstat (limited to 'nixos/modules')
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix27
2 files changed, 28 insertions, 0 deletions
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index a8718bd77871..bb3abc256fc1 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -200,6 +200,7 @@
   ./services/desktops/dleyna-server.nix
   ./services/desktops/geoclue2.nix
   ./services/desktops/gnome3/at-spi2-core.nix
+  ./services/desktops/gnome3/chrome-gnome-shell.nix
   ./services/desktops/gnome3/evolution-data-server.nix
   ./services/desktops/gnome3/gnome-disks.nix
   ./services/desktops/gnome3/gnome-documents.nix
diff --git a/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix b/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix
new file mode 100644
index 000000000000..2740a22c7ca0
--- /dev/null
+++ b/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix
@@ -0,0 +1,27 @@
+# Chrome GNOME Shell native host connector.
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+  ###### interface
+  options = {
+    services.gnome3.chrome-gnome-shell.enable = mkEnableOption ''
+      Chrome GNOME Shell native host connector, a DBus service
+      allowing to install GNOME Shell extensions from a web browser.
+    '';
+  };
+
+
+  ###### implementation
+  config = mkIf config.services.gnome3.chrome-gnome-shell.enable {
+    environment.etc = {
+      "chromium/native-messaging-hosts/org.gnome.chrome_gnome_shell.json".source = "${pkgs.chrome-gnome-shell}/etc/chromium/native-messaging-hosts/org.gnome.chrome_gnome_shell.json";
+      "opt/chrome/native-messaging-hosts/org.gnome.chrome_gnome_shell.json".source = "${pkgs.chrome-gnome-shell}/etc/opt/chrome/native-messaging-hosts/org.gnome.chrome_gnome_shell.json";
+    };
+
+    environment.systemPackages = [ pkgs.chrome-gnome-shell ];
+
+    services.dbus.packages = [ pkgs.chrome-gnome-shell ];
+  };
+}