diff options
Diffstat (limited to 'modules/desktop/window-manager/i3')
| -rw-r--r-- | modules/desktop/window-manager/i3/default.nix | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/modules/desktop/window-manager/i3/default.nix b/modules/desktop/window-manager/i3/default.nix new file mode 100644 index 0000000..369fe34 --- /dev/null +++ b/modules/desktop/window-manager/i3/default.nix @@ -0,0 +1,38 @@ +{ config, lib, pkgs, ... }: + +{ + options.desktop.window-manager.i3 = { + enable = lib.mkEnableOption "Enables i3."; + }; + + config = lib.mkIf config.desktop.window-manager.i3.enable { + # Set i3 as the default window manager + desktop.window-manager.default = lib.mkDefault "i3"; + desktop.window-manager.command = + if config.desktop.window-manager.default == "i3" then + "${pkgs.i3}/bin/i3" + else lib.mkDefault ""; + + xsession.windowManager.i3.enable = true; + + xsession.windowManager.i3.config = { + modifier = "Mod4"; + gaps = { + inner = config.desktop.window-manager.gap; + }; + terminal = config.tools.terminal.command; + fonts = { + names = [ "FiraCode Nerd Font" ]; + size = 11.0; + }; + bars = [ + { + command = + lib.mkIf + config.desktop.status-bar.polybar.enable + config.desktop.status-bar.polybar.command; + } + ]; + }; + }; +} |
