From 159fbf8c5573d85a731d2582b52b3e8cb223618c Mon Sep 17 00:00:00 2001 From: Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> Date: Fri, 8 Nov 2024 21:32:55 +0530 Subject: Added config for i3 window manager. i3 configuration is not finished. --- modules/desktop/window-manager/i3/default.nix | 38 +++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 modules/desktop/window-manager/i3/default.nix (limited to 'modules/desktop/window-manager/i3/default.nix') 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; + } + ]; + }; + }; +} -- cgit v1.2.3