summary refs log tree commit diff
diff options
context:
space:
mode:
authorJosé Romildo Malaquias <malaquias@gmail.com>2020-09-14 17:53:10 -0300
committerJosé Romildo Malaquias <malaquias@gmail.com>2020-09-14 21:11:15 -0300
commit0d7a2f67dfc7a609bbc6a94ed6a02317016160df (patch)
tree8765d5c73177533a9f41417e7bf4e1495958bc4e
parent10e2e5be3063a4264226da41d4d11ac1a7710500 (diff)
downloadnixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.tar
nixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.tar.gz
nixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.tar.bz2
nixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.tar.lz
nixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.tar.xz
nixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.tar.zst
nixpkgs-0d7a2f67dfc7a609bbc6a94ed6a02317016160df.zip
nixos/nm-applet: starts the applet with Appindicator support
As of version 1.18.0 Appindicator support is available in the official
network-manager-applet package. To use nm-applet in an Appindicator
environment the applet should be started  with the following command:

$ nm-applet --indicator

Without this option it does appear in the Enlightenment panel systray,
for instance.
-rw-r--r--nixos/modules/programs/nm-applet.nix15
1 files changed, 13 insertions, 2 deletions
diff --git a/nixos/modules/programs/nm-applet.nix b/nixos/modules/programs/nm-applet.nix
index 273a6dec59a..5bcee30125b 100644
--- a/nixos/modules/programs/nm-applet.nix
+++ b/nixos/modules/programs/nm-applet.nix
@@ -5,14 +5,25 @@
     maintainers = lib.teams.freedesktop.members;
   };
 
-  options.programs.nm-applet.enable = lib.mkEnableOption "nm-applet";
+  options.programs.nm-applet = {
+    enable = lib.mkEnableOption "nm-applet";
+
+    indicator = lib.mkOption {
+      type = lib.types.bool;
+      default = true;
+      description = ''
+        Whether to use indicator instead of status icon.
+        It is needed for Appindicator environments, like Enlightenment.
+      '';
+    };
+  };
 
   config = lib.mkIf config.programs.nm-applet.enable {
     systemd.user.services.nm-applet = {
       description = "Network manager applet";
       wantedBy = [ "graphical-session.target" ];
       partOf = [ "graphical-session.target" ];
-      serviceConfig.ExecStart = "${pkgs.networkmanagerapplet}/bin/nm-applet";
+      serviceConfig.ExecStart = "${pkgs.networkmanagerapplet}/bin/nm-applet ${lib.optionalString config.programs.nm-applet.indicator "--indicator"}";
     };
 
     services.dbus.packages = [ pkgs.gcr ];