about summary refs log tree commit diff
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2014-12-04 15:25:26 -0800
committerWilliam A. Kennington III <william@wkennington.com>2014-12-05 12:12:17 -0800
commit8297e09d78d30714f77230fcce22dfa0aaa5aa2a (patch)
tree948b95931d7bb14cb29722687b60c4d8dde31cae
parent159af942d55395cfea6614db3dbc1ba663baf486 (diff)
downloadnixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.tar
nixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.tar.gz
nixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.tar.bz2
nixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.tar.lz
nixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.tar.xz
nixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.tar.zst
nixlib-8297e09d78d30714f77230fcce22dfa0aaa5aa2a.zip
nixos/synergy: Don't generate units unecessarily
-rw-r--r--nixos/modules/services/misc/synergy.nix41
1 files changed, 20 insertions, 21 deletions
diff --git a/nixos/modules/services/misc/synergy.nix b/nixos/modules/services/misc/synergy.nix
index 5338b25715c8..271968f48b8a 100644
--- a/nixos/modules/services/misc/synergy.nix
+++ b/nixos/modules/services/misc/synergy.nix
@@ -81,27 +81,26 @@ in
 
   ###### implementation
 
-  config = {
-
-    systemd.services."synergy-client" = {
-      enable = cfgC.enable;
-      after = [ "network.target" ];
-      description = "Synergy client";
-      wantedBy = optional cfgC.autoStart "multi-user.target";
-      path = [ pkgs.synergy ];
-      serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergyc -f ${optionalString (cfgC.screenName != "") "-n ${cfgC.screenName}"} ${cfgC.serverAddress}'';
-    };
-
-    systemd.services."synergy-server" = {
-      enable = cfgS.enable;
-      after = [ "network.target" ];
-      description = "Synergy server";
-      wantedBy = optional cfgS.autoStart "multi-user.target";
-      path = [ pkgs.synergy ];
-      serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergys -c ${cfgS.configFile} -f ${optionalString (cfgS.address != "") "-a ${cfgS.address}"} ${optionalString (cfgS.screenName != "") "-n ${cfgS.screenName}" }'';
-    };
-
-  };
+  config = mkMerge [
+    (mkIf cfgC.enable {
+      systemd.services."synergy-client" = {
+        after = [ "network.target" ];
+        description = "Synergy client";
+        wantedBy = [ "multi-user.target" ];
+        path = [ pkgs.synergy ];
+        serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergyc -f ${optionalString (cfgC.screenName != "") "-n ${cfgC.screenName}"} ${cfgC.serverAddress}'';
+      };
+    })
+    (mkIf cfgS.enable {
+      systemd.services."synergy-server" = {
+        after = [ "network.target" ];
+        description = "Synergy server";
+        wantedBy = [ "multi-user.target" ];
+        path = [ pkgs.synergy ];
+        serviceConfig.ExecStart = ''${pkgs.synergy}/bin/synergys -c ${cfgS.configFile} -f ${optionalString (cfgS.address != "") "-a ${cfgS.address}"} ${optionalString (cfgS.screenName != "") "-n ${cfgS.screenName}" }'';
+      };
+    })
+  ];
 
 }