diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-11-08 21:32:55 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-11-08 21:32:55 +0530 |
| commit | 159fbf8c5573d85a731d2582b52b3e8cb223618c (patch) | |
| tree | de3d89b3b026121e8d3f597eddd4302e001953ab /modules/desktop/window-manager | |
| parent | 4b322dc7eb9339ec8297f05bd305f699755598e1 (diff) | |
| download | home-manager-config-159fbf8c5573d85a731d2582b52b3e8cb223618c.tar.gz home-manager-config-159fbf8c5573d85a731d2582b52b3e8cb223618c.zip | |
Added config for i3 window manager.
i3 configuration is not finished.
Diffstat (limited to 'modules/desktop/window-manager')
| -rw-r--r-- | modules/desktop/window-manager/default.nix | 2 | ||||
| -rw-r--r-- | modules/desktop/window-manager/i3/default.nix | 38 |
2 files changed, 40 insertions, 0 deletions
diff --git a/modules/desktop/window-manager/default.nix b/modules/desktop/window-manager/default.nix index 5d0f38e..2f36bce 100644 --- a/modules/desktop/window-manager/default.nix +++ b/modules/desktop/window-manager/default.nix @@ -3,6 +3,7 @@ { imports = [ ./bspwm + ./i3 ./sxhkd ]; @@ -10,6 +11,7 @@ default = lib.mkOption { type = lib.types.enum [ "bspwm" + "i3" ]; description = "Default window manager."; }; 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; + } + ]; + }; + }; +} |
