diff options
author | aszlig <aszlig@redmoonstudios.org> | 2015-04-08 20:57:19 +0200 |
---|---|---|
committer | aszlig <aszlig@redmoonstudios.org> | 2015-04-08 20:57:19 +0200 |
commit | e1563271f5d6a37bd561c093bfb134d1b25a3e27 (patch) | |
tree | 6c24ea5aadc5574adcfecc18b568e770b47f40be /modules | |
parent | 6463b29037057d12d0748deb3da2031558cbb12c (diff) |
services/i3: Fix override of default workspaces.
By default, there are 10 workspaces defined and since the module system changes, we need to assign default priorities to all values instead of the full attribute set, because whenever there is an override of the default, the whole attrset is replaced by the override instead of just the values. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Diffstat (limited to 'modules')
-rw-r--r-- | modules/user/aszlig/services/i3/default.nix | 17 |
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. |