From 21f472a7cc903e831e7e22a25ab08e34fa105019 Mon Sep 17 00:00:00 2001
From: meml0rz <meml0rz>
Date: Thu, 14 Nov 2024 00:06:11 +0100
Subject: [PATCH] kekl

---
 configuration.nix                |  4 +++
 modules/home.nix                 | 10 +++-----
 modules/nix/bspwm/bspwm.nix      | 42 ++++++++++++++++++++++++++++++++
 modules/nix/bspwm/default.nix    |  9 +++++++
 modules/nix/herbst.nix           | 15 ------------
 modules/nix/hypr/default.nix     | 12 +++++++++
 modules/nix/{ => hypr}/hypr.nix  |  0
 modules/nix/{ => hypr}/kitty.nix |  2 +-
 8 files changed, 71 insertions(+), 23 deletions(-)
 create mode 100644 modules/nix/bspwm/bspwm.nix
 create mode 100644 modules/nix/bspwm/default.nix
 delete mode 100644 modules/nix/herbst.nix
 create mode 100644 modules/nix/hypr/default.nix
 rename modules/nix/{ => hypr}/hypr.nix (100%)
 rename modules/nix/{ => hypr}/kitty.nix (89%)

diff --git a/configuration.nix b/configuration.nix
index a476769..bac11ce 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -36,6 +36,10 @@
   };
 
   services = {
+    xserver = {
+      enable = true;
+      displayManager.startx.enable = true;
+    };
     pipewire = {
       enable = true;
       pulse.enable = true;
diff --git a/modules/home.nix b/modules/home.nix
index 321ce72..133165a 100644
--- a/modules/home.nix
+++ b/modules/home.nix
@@ -2,19 +2,15 @@
 {
   imports = [
     ./nix/user.nix
-    ./nix/hypr.nix
-    ./nix/kitty.nix
     ./nix/nvim/default.nix
-    ./nix/herbst.nix
+
+    #./nix/hypr/default.nix
+    ./nix/bspwm/default.nix
   ];
 
   home.enableNixpkgsReleaseCheck = false;
   home.stateVersion = "24.05";
   home.file = {
-    # WAYBAR
-    ".config/waybar/style.css".source = ./raw/waybar/style.css;
-    ".config/waybar/config".source = ./raw/waybar/config;
-    # WP
     ".wp/temple.png".source = ./raw/wp/temple.png;
     ".wp/skull_purple.png".source = ./raw/wp/skull_purple.png;
   };
diff --git a/modules/nix/bspwm/bspwm.nix b/modules/nix/bspwm/bspwm.nix
new file mode 100644
index 0000000..2c26f64
--- /dev/null
+++ b/modules/nix/bspwm/bspwm.nix
@@ -0,0 +1,42 @@
+{ config, pkgs, ... }:
+{
+  services = {
+    sxhkd = {
+      enable = true;
+      keybindings = {
+        "super + return" = "${pkgs.alacritty}/bin/alacritty";
+        "super + space" = "${pkgs.rofi}/bin/rofi -show drun";
+
+        "super + shift + r" = "bspc restart";
+        "super + shift + space" = "bspc node focused -t \~floating";
+        "super + {1,2,3,4,5,6,7,8,9,0}" = "bspc desktop -f {1,2,3,4,5,6,7,8,9,0}";
+        "super + shift + {1-9,0}" = "bspc node -d '^{1-9,10}'";
+      };
+    };
+  };
+  xsession.windowManager.bspwm = {
+    enable = true;
+    settings = {
+      border_width = 2;
+      gapless_monocle = false;
+      split_ratio = 0.52;
+    };
+    extraConfig = ''
+      feh --bg-fill ~/.wp/temple.png &
+      bspc config focus_follows_pointer false
+    '';
+    rules = {
+      "gimp" = {
+        desktop = "^8";
+        state = "floating";
+        follow = true;
+      };
+      "kupfer.py" = {
+        focus = true;
+      };
+      "screenkey" = {
+        manage = false;
+      };
+    };
+  };
+}
diff --git a/modules/nix/bspwm/default.nix b/modules/nix/bspwm/default.nix
new file mode 100644
index 0000000..71af5a6
--- /dev/null
+++ b/modules/nix/bspwm/default.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, ... }:
+{
+  imports = [
+    ./bspwm.nix
+  ];
+  #home.file = {
+
+  #};
+}
diff --git a/modules/nix/herbst.nix b/modules/nix/herbst.nix
deleted file mode 100644
index 7e6c8a9..0000000
--- a/modules/nix/herbst.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ config, pkgs, ... }:
-{
-  xsession.windowManager.herbstluftwm = {
-    enable = true;
-    keybinds = {
-      Mod4-Return = "${pkgs.alacritty}/bin/alacritty";
-      Mod4-space = "${pkgs.rofi}/bin/rofi -show drun";
-    };
-    settings = {
-      gapless_grid = false;
-      window_border_width = 1;
-      window_border_active_color = "#FF0000";
-    };
-  };
-}
diff --git a/modules/nix/hypr/default.nix b/modules/nix/hypr/default.nix
new file mode 100644
index 0000000..700db3d
--- /dev/null
+++ b/modules/nix/hypr/default.nix
@@ -0,0 +1,12 @@
+{ config, pkgs, ... }:
+{
+  imports = [
+    ./hypr.nix
+    ./kitty.nix
+  ];
+  home.file = {
+    # WAYBAR
+    ".config/waybar/style.css".source = ./raw/waybar/style.css;
+    ".config/waybar/config".source = ./raw/waybar/config;
+  };
+}
diff --git a/modules/nix/hypr.nix b/modules/nix/hypr/hypr.nix
similarity index 100%
rename from modules/nix/hypr.nix
rename to modules/nix/hypr/hypr.nix
diff --git a/modules/nix/kitty.nix b/modules/nix/hypr/kitty.nix
similarity index 89%
rename from modules/nix/kitty.nix
rename to modules/nix/hypr/kitty.nix
index c92b438..9fa7ccc 100644
--- a/modules/nix/kitty.nix
+++ b/modules/nix/hypr/kitty.nix
@@ -6,7 +6,7 @@
       extraConfig = ''
         font_size 15.0
         cursor_shape beam
-        close_window
+        close_window true
       '';
     };
     tmux = {