Update Hyprland, use hyprpaper for wallpaper, split video

Change-Id: I4a000c722e074793d33822e8985539f212cf3299
Reviewed-on: https://git.clicks.codes/c/Coded/nixConfig/+/371
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: Samuel Shuert <coded@clicks.codes>
diff --git a/modules/codedPC/hyprland.nix b/modules/codedPC/hyprland.nix
new file mode 100644
index 0000000..a24e691
--- /dev/null
+++ b/modules/codedPC/hyprland.nix
@@ -0,0 +1,104 @@
+{ pkgs, inputs, flakeRoot, system, ... }: {
+
+  programs.hyprland.enable = true;
+
+  home-manager.users.coded = {
+    home.packages = [ pkgs.hyprpicker ];
+
+    wayland.windowManager.hyprland = {
+      enable = true;
+
+      xwayland.enable = true;
+      systemd.enable = true;
+
+      plugins = [
+        
+      ];
+
+      settings = let
+        mod = "SUPER";
+        terminal = "kitty";
+        menu = "anyrun";
+        reloadWallpaper = "${inputs.nixpkgs-unstable.legacyPackages.${system}.hyprpaper}/bin/hyprpaper";
+      in {
+        exec-once = "${reloadWallpaper}";
+
+        general = {
+          gaps_in = 5;
+          gaps_out = 20;
+
+          border_size = 2;
+          "col.active_border" = "rgba(71AEF5EE) rgba(F2D478EE) 45deg";
+          "col.inactive_border" = "rgba(C4C4C4EE)";
+
+          layout = "dwindle";
+        };
+
+        decoration = {
+          rounding = 10;
+
+          drop_shadow = true;
+          shadow_range = 4;
+          shadow_render_power = 3;
+          "col.shadow" = "rgba(1a1a1aee)";
+        };
+
+        input = {
+          kb_layout = "us";
+          numlock_by_default = true;
+        };
+
+        monitor = [
+          "DP-1,1920x1080@165,0x0,1"
+          "DP-2,1920x1080@165,1920x0,1"
+          "HDMI-A-1,1920x1080@60,960x-1080,1"
+          ",preferred,auto,1"
+        ];
+
+        xwayland = {
+          force_zero_scaling = true;
+        };
+
+        master = {
+          new_is_master = true;
+        };
+
+        bind = [
+          "${mod}, Q, killactive"
+          "${mod}, SPACE, togglefloating"
+          "${mod}, RETURN, exec, ${terminal}"
+          "${mod}, down, movefocus, d"
+          "${mod}, up, movefocus, u"
+          "${mod}, right, movefocus, r"
+          "${mod}, left, movefocus, l"
+
+          "${mod} SHIFT, R, exec, ${reloadWallpaper}"
+
+          "ALT, SPACE, exec, ${menu}"
+        ] ++ (
+          builtins.concatLists (builtins.genList (
+              x: let
+                ws = let
+                  c = (x + 1) / 10;
+                in
+                  builtins.toString (x + 1 - (c * 10));
+              in [
+                "${mod}, ${ws}, workspace, ${toString (x + 1)}"
+                "${mod} SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
+              ]
+            )
+            10)
+        );
+
+        bindm = [
+          "${mod}, mouse:272, movewindow"
+          "${mod}, mouse:273, resizewindow"
+        ];
+
+        misc = {
+          force_default_wallpaper = 0;
+        };
+      };
+    };
+  };
+}