about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--modules/user/aszlig/services/i3/default.nix17
1 files changed, 9 insertions, 8 deletions
diff --git a/modules/user/aszlig/services/i3/default.nix b/modules/user/aszlig/services/i3/default.nix
index 7b578026..093ac2df 100644
--- a/modules/user/aszlig/services/i3/default.nix
+++ b/modules/user/aszlig/services/i3/default.nix
@@ -20,15 +20,17 @@ let
   headModifier = if cfg.reverseHeads then reverseList else id;
   getHeadAt = elemAt (headModifier xrandrHeads);
 
+  mkSwitchTo = number: "$mod+${if number == 10 then "0" else toString number}";
+
   mkDefaultWorkspace = number: numberSymbol: {
     name = toString number;
-    value = mkDefault {
-      label = null;
-      labelPrefix = "${toString number}: ";
-      keys.switchTo = "$mod+${if number == 10 then "0" else toString number}";
-      keys.moveTo = "$mod+Shift+${numberSymbol}";
-      head = if headCount == 0 then null
-             else getHeadAt ((number - (excessWs + 1)) / wsPerHead);
+    value = {
+      label = mkDefault null;
+      labelPrefix = mkDefault "${toString number}: ";
+      keys.switchTo = mkDefault (mkSwitchTo number);
+      keys.moveTo = mkDefault "$mod+Shift+${numberSymbol}";
+      head = if headCount == 0 then mkDefault null
+             else mkDefault (getHeadAt ((number - (excessWs + 1)) / wsPerHead));
     };
   };
 
@@ -71,7 +73,6 @@ in
 
     workspaces = mkOption {
       type = types.attrsOf (types.submodule (import ./workspace.nix));
-      default = listToAttrs (imap mkDefaultWorkspace wsNumberSymbols);
       description = ''
         Workspace to monitor assignment.