From c0c5087218c27e31c3e6f66f3937bff22fa0f647 Mon Sep 17 00:00:00 2001 From: Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> Date: Tue, 24 Sep 2024 23:13:51 +0530 Subject: Using nix flake modules to manage the configurations. --- modules/desktop/window-manager/bspwm/default.nix | 38 ++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 modules/desktop/window-manager/bspwm/default.nix (limited to 'modules/desktop/window-manager/bspwm/default.nix') diff --git a/modules/desktop/window-manager/bspwm/default.nix b/modules/desktop/window-manager/bspwm/default.nix new file mode 100644 index 0000000..643d78b --- /dev/null +++ b/modules/desktop/window-manager/bspwm/default.nix @@ -0,0 +1,38 @@ +{ config, lib, ... }: + +{ + options = { + bspwm.enable = lib.mkEnableOption "Enables bspwm."; + }; + + config = lib.mkIf config.bspwm.enable { + xsession.windowManager.bspwm.enable = true; + + xsession.windowManager.bspwm.settings = with config.scheme.withHashtag; { + window_gap = 5; + split_ratio = 0.5; + single_monocle = true; + borderless_monocle = false; + gapless_monocle = false; + focus_follows_pointer = true; + pointer_follows_focus = false; + pointer_motion_interval = 40; + pointer_modifier = "mod1"; # alt key + pointer_action1 = "resize_side"; + pointer_action2 = "move"; + pointer_action3 = "resize_corner"; + normal_border_color = base02; + active_border_color = base02; + focused_border_color = base03; + }; + + xsession.windowManager.bspwm.rules = { + "popup" = { + state = "floating"; + sticky = true; + }; + }; + + xsession.windowManager.bspwm.extraConfig = builtins.readFile ./bspwmrc; + }; +} -- cgit v1.2.3