diff --git a/modules/home/anyrun/default.nix b/modules/home/anyrun/default.nix
index 2edf952..837324c 100644
--- a/modules/home/anyrun/default.nix
+++ b/modules/home/anyrun/default.nix
@@ -1,4 +1,10 @@
-{ inputs, pkgs, system, ...}: {
+{
+  inputs,
+  pkgs,
+  system,
+  ...
+}:
+{
   programs.anyrun = {
     enable = true;
     config = {
@@ -12,4 +18,4 @@
       ];
     };
   };
-}
\ No newline at end of file
+}
diff --git a/modules/home/audio/default.nix b/modules/home/audio/default.nix
new file mode 100644
index 0000000..3d7903b
--- /dev/null
+++ b/modules/home/audio/default.nix
@@ -0,0 +1,5 @@
+{ pkgs, ... }: {
+  home.packages = [
+    pkgs.helvum
+  ];
+}
\ No newline at end of file
diff --git a/modules/home/browser/chromium/default.nix b/modules/home/browser/chromium/default.nix
new file mode 100644
index 0000000..16dd34e
--- /dev/null
+++ b/modules/home/browser/chromium/default.nix
@@ -0,0 +1,33 @@
+{ lib, config, ... }: {
+  options.chimera.browser.chromium = {
+    enable = lib.mkEnableOption "Use chromium browser";
+    extensions = {
+      bitwarden.enable = lib.mkEnableOption "Turn on Bitwarden extension";
+      youtube = {
+        sponsorBlock.enable = lib.mkEnableOption "Turn on Sponsor Block";
+        returnDislike.enable = lib.mkEnableOption "Turn on Return Youtube Dislike";
+        deArrow.enable = lib.mkEnableOption "Turn on De Arrow";
+      };
+      reactDevTools.enable = lib.mkEnableOption "Turn on React Dev Tools";
+      ublockOrigin.enable = lib.mkEnableOption "Turn on uBlock Origin ad blocker";
+    };
+    extraExtensions = lib.mkOption {
+      type = lib.types.listOf (lib.types.either { id = lib.types.str; } { id = lib.types.str; crxPath = lib.types.path; version = lib.types.str; });
+      description = "Extra extensions to add to chromium on launch";
+      default = [];
+    };
+  };
+  config = lib.mkIf config.chimera.browser.chromium.enable ({
+    programs.chromium = {
+      enable = true;
+      extensions =
+        (if config.chimera.browser.chromium.extensions.bitwarden.enable then [{ id = "nngceckbapebfimnlniiiahkandclblb"; }] else []) #Bitwarden
+        ++ (if config.chimera.browser.chromium.extensions.youtube.sponsorBlock.enable then [{ id = "mnjggcdmjocbbbhaepdhchncahnbgone"; }] else []) #Sponsor Block
+        ++ (if config.chimera.browser.chromium.extensions.youtube.returnDislike.enable then [{ id = "gebbhagfogifgggkldgodflihgfeippi"; }] else []) #Return youtube dislike
+        ++ (if config.chimera.browser.chromium.extensions.youtube.deArrow.enable then [{ id = "enamippconapkdmgfgjchkhakpfinmaj"; }] else []) #DeArrow
+        ++ (if config.chimera.browser.chromium.extensions.reactDevTools.enable then [{ id = "fmkadmapgofadopljbjfkapdkoienihi"; }] else []) #React Dev Tools
+        ++ (if config.chimera.browser.chromium.extensions.ublockOrigin.enable then [{ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm"; }] else []) #uBlock Origin
+        ++ config.chimera.browser.chromium.extraExtensions;
+    };
+  });
+}
\ No newline at end of file
diff --git a/modules/home/browser/firefox/default.nix b/modules/home/browser/firefox/default.nix
new file mode 100644
index 0000000..d1aa88f
--- /dev/null
+++ b/modules/home/browser/firefox/default.nix
@@ -0,0 +1,33 @@
+{ lib, config, ... }: {
+  options.chimera.browser.firefox = {
+    enable = lib.mkEnableOption "Use firefox browser";
+    extensions = {
+      bitwarden.enable = lib.mkEnableOption "Turn on Bitwarden extension";
+      youtube = {
+        sponsorBlock.enable = lib.mkEnableOption "Turn on Sponsor Block";
+        returnDislike.enable = lib.mkEnableOption "Turn on Return Youtube Dislike";
+        deArrow.enable = lib.mkEnableOption "Turn on De Arrow";
+      };
+      reactDevTools.enable = lib.mkEnableOption "Turn on React Dev Tools";
+      ublockOrigin.enable = lib.mkEnableOption "Turn on uBlock Origin ad blocker";
+      adnauseam.enable = lib.mkEnableOption "Turn on AdNauseam ad blocker";
+    };
+    extraExtensions = lib.mkOption {
+      type = lib.types.listOf lib.types.package;
+      description = "Extra extensions to add to firefox";
+    };
+  };
+  config = lib.mkIf config.chimera.browser.firefox.enable ({
+    programs.firefox = {
+      enable = true;
+      profiles.chimera.extensions = (if config.chimera.browser.firefox.extensions.bitwarden.enable then [ config.nur.repos.rycee.firefox-addons.bitwarden ] else [])
+        ++ (if config.chimera.browser.firefox.extensions.youtube.sponsorBlock.enable then [ config.nur.repos.rycee.firefox-addons.sponsorblock ] else [])
+        ++ (if config.chimera.browser.firefox.extensions.youtube.returnDislike.enable then [ config.nur.repos.rycee.firefox-addons.return-youtube-dislikes ] else [])
+        ++ (if config.chimera.browser.firefox.extensions.youtube.deArrow.enable then [ config.nur.repos.rycee.firefox-addons.dearrow ] else [])
+        ++ (if config.chimera.browser.firefox.extensions.reactDevTools.enable then [ config.nur.repos.rycee.firefox-addons.react-devtools ] else [])
+        ++ (if config.chimera.browser.firefox.extensions.ublockOrigin.enable then [ config.nur.repos.rycee.firefox-addons.ublock-origin ] else [])
+        ++ (if config.chimera.browser.firefox.extensions.adnauseam.enable then [ config.nur.repos.rycee.firefox-addons.adnauseam ] else [])
+        ++ config.chimera.browser.firefox.extraExtensions;
+    };
+  });
+}
\ No newline at end of file
diff --git a/modules/home/catppuccin/default.nix b/modules/home/catppuccin/default.nix
new file mode 100644
index 0000000..3389ba1
--- /dev/null
+++ b/modules/home/catppuccin/default.nix
@@ -0,0 +1,1419 @@
+{ lib, config, ... }:
+{
+  options.chimera.theme.catppuccin = {
+    enable = lib.mkEnableOption "Whether to use Catppuccin themes";
+    style = lib.mkOption {
+      type = lib.types.enum [
+        "Latte"
+        "Frappe"
+        "Macchiato"
+        "Mocha"
+      ];
+      description = "Catppuccin style to use";
+    };
+    color = lib.mkOption {
+      type = lib.types.enum [
+        "Rosewater"
+        "Flamingo"
+        "Pink"
+        "Mauve"
+        "Red"
+        "Maroon"
+        "Peach"
+        "Yellow"
+        "Green"
+        "Teal"
+        "Sky"
+        "Sapphire"
+        "Blue"
+        "Lavender"
+        "Text"
+        "Subtext1"
+        "Subtext0"
+        "Overlay2"
+        "Overlay1"
+        "Overlay0"
+        "Surface2"
+        "Surface1"
+        "Surface0"
+        "Base"
+        "Mantle"
+        "Crust"
+      ];
+      description = "Catppuccin color to use";
+    };
+  };
+
+  config = lib.mkIf config.chimera.theme.catppuccin.enable (
+    let
+      catppuccinColors = {
+        Latte = {
+          Rosewater = {
+            hex = "#dc8a78";
+            rgb = {
+              r = 220;
+              g = 138;
+              b = 120;
+            };
+            hsl = {
+              h = 11;
+              s = 59;
+              l = 67;
+            };
+          };
+          Flamingo = {
+            hex = "#dd7878";
+            rgb = {
+              r = 221;
+              g = 120;
+              b = 120;
+            };
+            hsl = {
+              h = 0;
+              s = 60;
+              l = 67;
+            };
+          };
+          Pink = {
+            hex = "#ea76cb";
+            rgb = {
+              r = 234;
+              g = 118;
+              b = 203;
+            };
+            hsl = {
+              h = 316;
+              s = 73;
+              l = 69;
+            };
+          };
+          Mauve = {
+            hex = "#8839ef";
+            rgb = {
+              r = 136;
+              g = 57;
+              b = 239;
+            };
+            hsl = {
+              h = 266;
+              s = 85;
+              l = 58;
+            };
+          };
+          Red = {
+            hex = "#d20f39";
+            rgb = {
+              r = 210;
+              g = 15;
+              b = 57;
+            };
+            hsl = {
+              h = 347;
+              s = 87;
+              l = 44;
+            };
+          };
+          Maroon = {
+            hex = "#e64553";
+            rgb = {
+              r = 230;
+              g = 69;
+              b = 83;
+            };
+            hsl = {
+              h = 355;
+              s = 76;
+              l = 59;
+            };
+          };
+          Peach = {
+            hex = "#fe640b";
+            rgb = {
+              r = 254;
+              g = 100;
+              b = 11;
+            };
+            hsl = {
+              h = 22;
+              s = 99;
+              l = 52;
+            };
+          };
+          Yellow = {
+            hex = "#df8e1d";
+            rgb = {
+              r = 223;
+              g = 142;
+              b = 29;
+            };
+            hsl = {
+              h = 35;
+              s = 77;
+              l = 49;
+            };
+          };
+          Green = {
+            hex = "#40a02b";
+            rgb = {
+              r = 64;
+              g = 160;
+              b = 43;
+            };
+            hsl = {
+              h = 109;
+              s = 58;
+              l = 40;
+            };
+          };
+          Teal = {
+            hex = "#179299";
+            rgb = {
+              r = 23;
+              g = 146;
+              b = 153;
+            };
+            hsl = {
+              h = 183;
+              s = 74;
+              l = 35;
+            };
+          };
+          Sky = {
+            hex = "#04a5e5";
+            rgb = {
+              r = 4;
+              g = 165;
+              b = 229;
+            };
+            hsl = {
+              h = 197;
+              s = 97;
+              l = 46;
+            };
+          };
+          Sapphire = {
+            hex = "#209fb5";
+            rgb = {
+              r = 32;
+              g = 159;
+              b = 181;
+            };
+            hsl = {
+              h = 189;
+              s = 70;
+              l = 42;
+            };
+          };
+          Blue = {
+            hex = "#1e66f5";
+            rgb = {
+              r = 30;
+              g = 102;
+              b = 245;
+            };
+            hsl = {
+              h = 220;
+              s = 91;
+              l = 54;
+            };
+          };
+          Lavender = {
+            hex = "#7287fd";
+            rgb = {
+              r = 114;
+              g = 135;
+              b = 253;
+            };
+            hsl = {
+              h = 231;
+              s = 97;
+              l = 72;
+            };
+          };
+          Text = {
+            hex = "#4c4f69";
+            rgb = {
+              r = 76;
+              g = 79;
+              b = 105;
+            };
+            hsl = {
+              h = 234;
+              s = 16;
+              l = 35;
+            };
+          };
+          Subtext1 = {
+            hex = "#5c5f77";
+            rgb = {
+              r = 92;
+              g = 95;
+              b = 119;
+            };
+            hsl = {
+              h = 233;
+              s = 13;
+              l = 41;
+            };
+          };
+          Subtext0 = {
+            hex = "#6c6f85";
+            rgb = {
+              r = 108;
+              g = 111;
+              b = 133;
+            };
+            hsl = {
+              h = 233;
+              s = 10;
+              l = 47;
+            };
+          };
+          Overlay2 = {
+            hex = "#7c7f93";
+            rgb = {
+              r = 124;
+              g = 127;
+              b = 147;
+            };
+            hsl = {
+              h = 232;
+              s = 10;
+              l = 53;
+            };
+          };
+          Overlay1 = {
+            hex = "#8c8fa1";
+            rgb = {
+              r = 140;
+              g = 143;
+              b = 161;
+            };
+            hsl = {
+              h = 231;
+              s = 10;
+              l = 59;
+            };
+          };
+          Overlay0 = {
+            hex = "#9ca0b0";
+            rgb = {
+              r = 156;
+              g = 160;
+              b = 176;
+            };
+            hsl = {
+              h = 228;
+              s = 11;
+              l = 65;
+            };
+          };
+          Surface2 = {
+            hex = "#acb0be";
+            rgb = {
+              r = 172;
+              g = 176;
+              b = 190;
+            };
+            hsl = {
+              h = 227;
+              s = 12;
+              l = 71;
+            };
+          };
+          Surface1 = {
+            hex = "#bcc0cc";
+            rgb = {
+              r = 188;
+              g = 192;
+              b = 204;
+            };
+            hsl = {
+              h = 225;
+              s = 14;
+              l = 77;
+            };
+          };
+          Surface0 = {
+            hex = "#ccd0da";
+            rgb = {
+              r = 204;
+              g = 208;
+              b = 218;
+            };
+            hsl = {
+              h = 223;
+              s = 16;
+              l = 83;
+            };
+          };
+          Base = {
+            hex = "#eff1f5";
+            rgb = {
+              r = 239;
+              g = 241;
+              b = 245;
+            };
+            hsl = {
+              h = 220;
+              s = 23;
+              l = 95;
+            };
+          };
+          Mantle = {
+            hex = "#e6e9ef";
+            rgb = {
+              r = 230;
+              g = 233;
+              b = 239;
+            };
+            hsl = {
+              h = 220;
+              s = 22;
+              l = 92;
+            };
+          };
+          Crust = {
+            hex = "#dce0e8";
+            rgb = {
+              r = 220;
+              g = 224;
+              b = 232;
+            };
+            hsl = {
+              h = 220;
+              s = 21;
+              l = 89;
+            };
+          };
+        };
+        Frappe = {
+          Rosewater = {
+            hex = "#f2d5cf";
+            rgb = {
+              r = 242;
+              g = 213;
+              b = 207;
+            };
+            hsl = {
+              h = 10;
+              s = 57;
+              l = 88;
+            };
+          };
+          Flamingo = {
+            hex = "#eebebe";
+            rgb = {
+              r = 238;
+              g = 190;
+              b = 190;
+            };
+            hsl = {
+              h = 0;
+              s = 59;
+              l = 84;
+            };
+          };
+          Pink = {
+            hex = "#f4b8e4";
+            rgb = {
+              r = 244;
+              g = 184;
+              b = 228;
+            };
+            hsl = {
+              h = 316;
+              s = 73;
+              l = 84;
+            };
+          };
+          Mauve = {
+            hex = "#ca9ee6";
+            rgb = {
+              r = 202;
+              g = 158;
+              b = 230;
+            };
+            hsl = {
+              h = 277;
+              s = 59;
+              l = 76;
+            };
+          };
+          Red = {
+            hex = "#e78284";
+            rgb = {
+              r = 231;
+              g = 130;
+              b = 132;
+            };
+            hsl = {
+              h = 359;
+              s = 68;
+              l = 71;
+            };
+          };
+          Maroon = {
+            hex = "#ea999c";
+            rgb = {
+              r = 234;
+              g = 153;
+              b = 156;
+            };
+            hsl = {
+              h = 358;
+              s = 66;
+              l = 76;
+            };
+          };
+          Peach = {
+            hex = "#ef9f76";
+            rgb = {
+              r = 239;
+              g = 159;
+              b = 118;
+            };
+            hsl = {
+              h = 20;
+              s = 79;
+              l = 70;
+            };
+          };
+          Yellow = {
+            hex = "#e5c890";
+            rgb = {
+              r = 229;
+              g = 200;
+              b = 144;
+            };
+            hsl = {
+              h = 40;
+              s = 62;
+              l = 73;
+            };
+          };
+          Green = {
+            hex = "#a6d189";
+            rgb = {
+              r = 166;
+              g = 209;
+              b = 137;
+            };
+            hsl = {
+              h = 96;
+              s = 44;
+              l = 68;
+            };
+          };
+          Teal = {
+            hex = "#81c8be";
+            rgb = {
+              r = 129;
+              g = 200;
+              b = 190;
+            };
+            hsl = {
+              h = 172;
+              s = 39;
+              l = 65;
+            };
+          };
+          Sky = {
+            hex = "#99d1db";
+            rgb = {
+              r = 153;
+              g = 209;
+              b = 219;
+            };
+            hsl = {
+              h = 189;
+              s = 48;
+              l = 73;
+            };
+          };
+          Sapphire = {
+            hex = "#85c1dc";
+            rgb = {
+              r = 133;
+              g = 193;
+              b = 220;
+            };
+            hsl = {
+              h = 199;
+              s = 55;
+              l = 69;
+            };
+          };
+          Blue = {
+            hex = "#8caaee";
+            rgb = {
+              r = 140;
+              g = 170;
+              b = 238;
+            };
+            hsl = {
+              h = 222;
+              s = 74;
+              l = 74;
+            };
+          };
+          Lavender = {
+            hex = "#babbf1";
+            rgb = {
+              r = 186;
+              g = 187;
+              b = 241;
+            };
+            hsl = {
+              h = 239;
+              s = 66;
+              l = 84;
+            };
+          };
+          Text = {
+            hex = "#c6d0f5";
+            rgb = {
+              r = 198;
+              g = 208;
+              b = 245;
+            };
+            hsl = {
+              h = 227;
+              s = 70;
+              l = 87;
+            };
+          };
+          Subtext1 = {
+            hex = "#b5bfe2";
+            rgb = {
+              r = 181;
+              g = 191;
+              b = 226;
+            };
+            hsl = {
+              h = 227;
+              s = 44;
+              l = 80;
+            };
+          };
+          Subtext0 = {
+            hex = "#a5adce";
+            rgb = {
+              r = 165;
+              g = 173;
+              b = 206;
+            };
+            hsl = {
+              h = 228;
+              s = 29;
+              l = 73;
+            };
+          };
+          Overlay2 = {
+            hex = "#949cbb";
+            rgb = {
+              r = 148;
+              g = 156;
+              b = 187;
+            };
+            hsl = {
+              h = 228;
+              s = 22;
+              l = 66;
+            };
+          };
+          Overlay1 = {
+            hex = "#838ba7";
+            rgb = {
+              r = 131;
+              g = 139;
+              b = 167;
+            };
+            hsl = {
+              h = 227;
+              s = 17;
+              l = 58;
+            };
+          };
+          Overlay0 = {
+            hex = "#737994";
+            rgb = {
+              r = 115;
+              g = 121;
+              b = 148;
+            };
+            hsl = {
+              h = 229;
+              s = 13;
+              l = 52;
+            };
+          };
+          Surface2 = {
+            hex = "#626880";
+            rgb = {
+              r = 98;
+              g = 104;
+              b = 128;
+            };
+            hsl = {
+              h = 228;
+              s = 13;
+              l = 44;
+            };
+          };
+          Surface1 = {
+            hex = "#51576d";
+            rgb = {
+              r = 81;
+              g = 87;
+              b = 109;
+            };
+            hsl = {
+              h = 227;
+              s = 15;
+              l = 37;
+            };
+          };
+          Surface0 = {
+            hex = "#414559";
+            rgb = {
+              r = 65;
+              g = 69;
+              b = 89;
+            };
+            hsl = {
+              h = 230;
+              s = 16;
+              l = 30;
+            };
+          };
+          Base = {
+            hex = "#303446";
+            rgb = {
+              r = 48;
+              g = 52;
+              b = 70;
+            };
+            hsl = {
+              h = 229;
+              s = 19;
+              l = 23;
+            };
+          };
+          Mantle = {
+            hex = "#292c3c";
+            rgb = {
+              r = 41;
+              g = 44;
+              b = 60;
+            };
+            hsl = {
+              h = 231;
+              s = 19;
+              l = 20;
+            };
+          };
+          Crust = {
+            hex = "#232634";
+            rgb = {
+              r = 35;
+              g = 38;
+              b = 52;
+            };
+            hsl = {
+              h = 229;
+              s = 20;
+              l = 17;
+            };
+          };
+        };
+        Macchiato = {
+          Rosewater = {
+            hex = "#f4dbd6";
+            rgb = {
+              r = 244;
+              g = 219;
+              b = 214;
+            };
+            hsl = {
+              h = 10;
+              s = 58;
+              l = 90;
+            };
+          };
+          Flamingo = {
+            hex = "#f0c6c6";
+            rgb = {
+              r = 240;
+              g = 198;
+              b = 198;
+            };
+            hsl = {
+              h = 0;
+              s = 58;
+              l = 86;
+            };
+          };
+          Pink = {
+            hex = "#f5bde6";
+            rgb = {
+              r = 245;
+              g = 189;
+              b = 230;
+            };
+            hsl = {
+              h = 316;
+              s = 74;
+              l = 85;
+            };
+          };
+          Mauve = {
+            hex = "#c6a0f6";
+            rgb = {
+              r = 198;
+              g = 160;
+              b = 246;
+            };
+            hsl = {
+              h = 267;
+              s = 83;
+              l = 80;
+            };
+          };
+          Red = {
+            hex = "#ed8796";
+            rgb = {
+              r = 237;
+              g = 135;
+              b = 150;
+            };
+            hsl = {
+              h = 351;
+              s = 74;
+              l = 73;
+            };
+          };
+          Maroon = {
+            hex = "#ee99a0";
+            rgb = {
+              r = 238;
+              g = 153;
+              b = 160;
+            };
+            hsl = {
+              h = 355;
+              s = 71;
+              l = 77;
+            };
+          };
+          Peach = {
+            hex = "#f5a97f";
+            rgb = {
+              r = 245;
+              g = 169;
+              b = 127;
+            };
+            hsl = {
+              h = 21;
+              s = 86;
+              l = 73;
+            };
+          };
+          Yellow = {
+            hex = "#eed49f";
+            rgb = {
+              r = 238;
+              g = 212;
+              b = 159;
+            };
+            hsl = {
+              h = 40;
+              s = 70;
+              l = 78;
+            };
+          };
+          Green = {
+            hex = "#a6da95";
+            rgb = {
+              r = 166;
+              g = 218;
+              b = 149;
+            };
+            hsl = {
+              h = 105;
+              s = 48;
+              l = 72;
+            };
+          };
+          Teal = {
+            hex = "#8bd5ca";
+            rgb = {
+              r = 139;
+              g = 213;
+              b = 202;
+            };
+            hsl = {
+              h = 171;
+              s = 47;
+              l = 69;
+            };
+          };
+          Sky = {
+            hex = "#91d7e3";
+            rgb = {
+              r = 145;
+              g = 215;
+              b = 227;
+            };
+            hsl = {
+              h = 189;
+              s = 59;
+              l = 73;
+            };
+          };
+          Sapphire = {
+            hex = "#7dc4e4";
+            rgb = {
+              r = 125;
+              g = 196;
+              b = 228;
+            };
+            hsl = {
+              h = 199;
+              s = 66;
+              l = 69;
+            };
+          };
+          Blue = {
+            hex = "#8aadf4";
+            rgb = {
+              r = 138;
+              g = 173;
+              b = 244;
+            };
+            hsl = {
+              h = 220;
+              s = 83;
+              l = 75;
+            };
+          };
+          Lavender = {
+            hex = "#b7bdf8";
+            rgb = {
+              r = 183;
+              g = 189;
+              b = 248;
+            };
+            hsl = {
+              h = 234;
+              s = 82;
+              l = 85;
+            };
+          };
+          Text = {
+            hex = "#cad3f5";
+            rgb = {
+              r = 202;
+              g = 211;
+              b = 245;
+            };
+            hsl = {
+              h = 227;
+              s = 68;
+              l = 88;
+            };
+          };
+          Subtext1 = {
+            hex = "#b8c0e0";
+            rgb = {
+              r = 184;
+              g = 192;
+              b = 224;
+            };
+            hsl = {
+              h = 228;
+              s = 39;
+              l = 80;
+            };
+          };
+          Subtext0 = {
+            hex = "#a5adcb";
+            rgb = {
+              r = 165;
+              g = 173;
+              b = 203;
+            };
+            hsl = {
+              h = 227;
+              s = 27;
+              l = 72;
+            };
+          };
+          Overlay2 = {
+            hex = "#939ab7";
+            rgb = {
+              r = 147;
+              g = 154;
+              b = 183;
+            };
+            hsl = {
+              h = 228;
+              s = 20;
+              l = 65;
+            };
+          };
+          Overlay1 = {
+            hex = "#8087a2";
+            rgb = {
+              r = 128;
+              g = 135;
+              b = 162;
+            };
+            hsl = {
+              h = 228;
+              s = 15;
+              l = 57;
+            };
+          };
+          Overlay0 = {
+            hex = "#6e738d";
+            rgb = {
+              r = 110;
+              g = 115;
+              b = 141;
+            };
+            hsl = {
+              h = 230;
+              s = 12;
+              l = 49;
+            };
+          };
+          Surface2 = {
+            hex = "#5b6078";
+            rgb = {
+              r = 91;
+              g = 96;
+              b = 120;
+            };
+            hsl = {
+              h = 230;
+              s = 14;
+              l = 41;
+            };
+          };
+          Surface1 = {
+            hex = "#494d64";
+            rgb = {
+              r = 73;
+              g = 77;
+              b = 100;
+            };
+            hsl = {
+              h = 231;
+              s = 16;
+              l = 34;
+            };
+          };
+          Surface0 = {
+            hex = "#363a4f";
+            rgb = {
+              r = 54;
+              g = 58;
+              b = 79;
+            };
+            hsl = {
+              h = 230;
+              s = 19;
+              l = 26;
+            };
+          };
+          Base = {
+            hex = "#24273a";
+            rgb = {
+              r = 36;
+              g = 39;
+              b = 58;
+            };
+            hsl = {
+              h = 232;
+              s = 23;
+              l = 18;
+            };
+          };
+          Mantle = {
+            hex = "#1e2030";
+            rgb = {
+              r = 30;
+              g = 32;
+              b = 48;
+            };
+            hsl = {
+              h = 233;
+              s = 23;
+              l = 15;
+            };
+          };
+          Crust = {
+            hex = "#181926";
+            rgb = {
+              r = 24;
+              g = 25;
+              b = 38;
+            };
+            hsl = {
+              h = 236;
+              s = 23;
+              l = 12;
+            };
+          };
+        };
+        Mocha = {
+          Rosewater = {
+            hex = "#f5e0dc";
+            rgb = {
+              r = 245;
+              g = 224;
+              b = 220;
+            };
+            hsl = {
+              h = 10;
+              s = 56;
+              l = 91;
+            };
+          };
+          Flamingo = {
+            hex = "#f2cdcd";
+            rgb = {
+              r = 242;
+              g = 205;
+              b = 205;
+            };
+            hsl = {
+              h = 0;
+              s = 59;
+              l = 88;
+            };
+          };
+          Pink = {
+            hex = "#f5c2e7";
+            rgb = {
+              r = 245;
+              g = 194;
+              b = 231;
+            };
+            hsl = {
+              h = 316;
+              s = 72;
+              l = 86;
+            };
+          };
+          Mauve = {
+            hex = "#cba6f7";
+            rgb = {
+              r = 203;
+              g = 166;
+              b = 247;
+            };
+            hsl = {
+              h = 267;
+              s = 84;
+              l = 81;
+            };
+          };
+          Red = {
+            hex = "#f38ba8";
+            rgb = {
+              r = 243;
+              g = 139;
+              b = 168;
+            };
+            hsl = {
+              h = 343;
+              s = 81;
+              l = 75;
+            };
+          };
+          Maroon = {
+            hex = "#eba0ac";
+            rgb = {
+              r = 235;
+              g = 160;
+              b = 172;
+            };
+            hsl = {
+              h = 350;
+              s = 65;
+              l = 77;
+            };
+          };
+          Peach = {
+            hex = "#fab387";
+            rgb = {
+              r = 250;
+              g = 179;
+              b = 135;
+            };
+            hsl = {
+              h = 23;
+              s = 92;
+              l = 75;
+            };
+          };
+          Yellow = {
+            hex = "#f9e2af";
+            rgb = {
+              r = 249;
+              g = 226;
+              b = 175;
+            };
+            hsl = {
+              h = 41;
+              s = 86;
+              l = 83;
+            };
+          };
+          Green = {
+            hex = "#a6e3a1";
+            rgb = {
+              r = 166;
+              g = 227;
+              b = 161;
+            };
+            hsl = {
+              h = 115;
+              s = 54;
+              l = 76;
+            };
+          };
+          Teal = {
+            hex = "#94e2d5";
+            rgb = {
+              r = 148;
+              g = 226;
+              b = 213;
+            };
+            hsl = {
+              h = 170;
+              s = 57;
+              l = 73;
+            };
+          };
+          Sky = {
+            hex = "#89dceb";
+            rgb = {
+              r = 137;
+              g = 220;
+              b = 235;
+            };
+            hsl = {
+              h = 189;
+              s = 71;
+              l = 73;
+            };
+          };
+          Sapphire = {
+            hex = "#74c7ec";
+            rgb = {
+              r = 116;
+              g = 199;
+              b = 236;
+            };
+            hsl = {
+              h = 199;
+              s = 76;
+              l = 69;
+            };
+          };
+          Blue = {
+            hex = "#89b4fa";
+            rgb = {
+              r = 137;
+              g = 180;
+              b = 250;
+            };
+            hsl = {
+              h = 217;
+              s = 92;
+              l = 76;
+            };
+          };
+          Lavender = {
+            hex = "#b4befe";
+            rgb = {
+              r = 180;
+              g = 190;
+              b = 254;
+            };
+            hsl = {
+              h = 232;
+              s = 97;
+              l = 85;
+            };
+          };
+          Text = {
+            hex = "#cdd6f4";
+            rgb = {
+              r = 205;
+              g = 214;
+              b = 244;
+            };
+            hsl = {
+              h = 226;
+              s = 64;
+              l = 88;
+            };
+          };
+          Subtext1 = {
+            hex = "#bac2de";
+            rgb = {
+              r = 186;
+              g = 194;
+              b = 222;
+            };
+            hsl = {
+              h = 227;
+              s = 35;
+              l = 80;
+            };
+          };
+          Subtext0 = {
+            hex = "#a6adc8";
+            rgb = {
+              r = 166;
+              g = 173;
+              b = 200;
+            };
+            hsl = {
+              h = 228;
+              s = 24;
+              l = 72;
+            };
+          };
+          Overlay2 = {
+            hex = "#9399b2";
+            rgb = {
+              r = 147;
+              g = 153;
+              b = 178;
+            };
+            hsl = {
+              h = 228;
+              s = 17;
+              l = 64;
+            };
+          };
+          Overlay1 = {
+            hex = "#7f849c";
+            rgb = {
+              r = 127;
+              g = 132;
+              b = 156;
+            };
+            hsl = {
+              h = 230;
+              s = 13;
+              l = 55;
+            };
+          };
+          Overlay0 = {
+            hex = "#6c7086";
+            rgb = {
+              r = 108;
+              g = 112;
+              b = 134;
+            };
+            hsl = {
+              h = 231;
+              s = 11;
+              l = 47;
+            };
+          };
+          Surface2 = {
+            hex = "#585b70";
+            rgb = {
+              r = 88;
+              g = 91;
+              b = 112;
+            };
+            hsl = {
+              h = 233;
+              s = 12;
+              l = 39;
+            };
+          };
+          Surface1 = {
+            hex = "#45475a";
+            rgb = {
+              r = 69;
+              g = 71;
+              b = 90;
+            };
+            hsl = {
+              h = 234;
+              s = 13;
+              l = 31;
+            };
+          };
+          Surface0 = {
+            hex = "#313244";
+            rgb = {
+              r = 49;
+              g = 50;
+              b = 68;
+            };
+            hsl = {
+              h = 237;
+              s = 16;
+              l = 23;
+            };
+          };
+          Base = {
+            hex = "#1e1e2e";
+            rgb = {
+              r = 30;
+              g = 30;
+              b = 46;
+            };
+            hsl = {
+              h = 240;
+              s = 21;
+              l = 15;
+            };
+          };
+          Mantle = {
+            hex = "#181825";
+            rgb = {
+              r = 24;
+              g = 24;
+              b = 37;
+            };
+            hsl = {
+              h = 240;
+              s = 21;
+              l = 12;
+            };
+          };
+          Crust = {
+            hex = "#11111b";
+            rgb = {
+              r = 17;
+              g = 17;
+              b = 27;
+            };
+            hsl = {
+              h = 240;
+              s = 23;
+              l = 9;
+            };
+          };
+        };
+      };
+    in
+    {
+      chimera.theme.colors = catppuccinColors.${config.chimera.theme.catppuccin.style} // {
+        Highlight =
+          catppuccinColors.${config.chimera.theme.catppuccin.style}.${config.chimera.theme.catppuccin.color};
+      };
+    }
+  );
+}
diff --git a/modules/home/eww/config/eww.scss b/modules/home/eww/config/eww.scss
index eae0b3c..ad16c17 100644
--- a/modules/home/eww/config/eww.scss
+++ b/modules/home/eww/config/eww.scss
@@ -1,61 +1,82 @@
 * {
     all: unset; //Unsets everything so you can style everything from scratch
-}
-
-.bar {
-    background-color: #ccd0da;
-    color: #4c4f69;
+  }
+  
+  $surface-color: #CCD0DA;
+  $contrast-color: #4C4F69;
+  $accent-color: #F27878;
+  
+  .bar {
+    background-color: $surface-color;
+    color: $contrast-color;
     border-radius: 10px;
-    padding: 10px 15px;
+    padding: 5px 15px;
     margin: 0 20px;
     margin-top: 20px;
-}
-
-// Styles on classes (see eww.yuck for more information)
-
-.sidestuff slider {
+  }
+  
+  // Styles on classes (see eww.yuck for more information)
+  
+  .sidestuff slider {
     all: unset;
-    color: #ffd5cd;
-}
-
-.metric scale trough highlight {
+    color: $surface-color;
+  }
+  
+  .radio button {
     all: unset;
-    background-color: #D35D6E;
-    color: #000000;
+    min-width: 25px;
+    min-height: 25px;
+    margin-right: 10px;
+    border-radius: 100%;
+  }
+  
+  .radio button.unblocked {
+    background-color: $accent-color;
+  }
+  
+  .radio button.blocked {
+    background-color: $contrast-color;
+  }
+  
+  .metric scale trough highlight {
+    all: unset;
+    background-color: $accent-color;
+    color: $contrast-color;
     border-radius: 10px;
-}
-
-.metric scale trough {
+  }
+  
+  .metric scale trough {
     all: unset;
-    background-color: #4e4e4e;
+    background-color: $contrast-color;
     border-radius: 50px;
     min-height: 3px;
     min-width: 50px;
     margin-left: 10px;
     margin-right: 20px;
-}
-
-.metric scale trough highlight {
+  }
+  
+  .metric scale trough highlight {
     all: unset;
-    background-color: #D35D6E;
-    color: #000000;
+    background-color: $accent-color;
+    color: $contrast-color;
     border-radius: 10px;
-}
-
-.metric scale trough {
+  }
+  
+  .metric scale trough {
     all: unset;
-    background-color: #4e4e4e;
+    background-color: $contrast-color;
     border-radius: 50px;
     min-height: 3px;
     min-width: 50px;
     margin-left: 10px;
     margin-right: 20px;
-}
-
-.label-ram {
+  }
+  
+  .label-ram {
     font-size: large;
-}
-
-.workspaces button:hover {
-    color: #D35D6E;
-}
\ No newline at end of file
+  }
+  
+  .workspaces button:hover {
+    color: $accent-color;
+  }
+  
\ No newline at end of file
diff --git a/modules/home/eww/config/eww.yuck b/modules/home/eww/config/eww.yuck
index 598646e..a7695ac 100644
--- a/modules/home/eww/config/eww.yuck
+++ b/modules/home/eww/config/eww.yuck
@@ -9,14 +9,38 @@
   (box :class "sidestuff" :orientation "h" :space-evenly false :halign "end"
     (metric :label "🔊"
       :value volume
-    :onchange "amixer -D pulse sset Master {}%")
-    (metric :label ""
+    :onchange "nix run nixpkgs#pamixer -- --set-volume {}")
+    (radio)
+    (sysinfo)
+  time))
+
+(defwidget radio []
+  (box :class "radio" :orientation "h" :space-evenly false :halign "end"
+    (button :class bluetooth 
+      :onclick { bluetooth == "inactive" ? "bluetoothctl power on" : "bluetoothctl power off"}
+      "")
+    (button :class wifi 
+      :onclick { wifi == "disabled" ? "nmcli radio wifi on" : "nmcli radio wifi off"}
+      "🛜")
+  )
+)
+
+(defwidget sysinfo []
+  (box :class "sysinfo"
+    ; (metric :label { battery_status == "Normal" ? "🔋" : "🪫" }
+    ;   :value battery_cap
+    ; :onchange "")
+    (metric :label "🐏"
       :value {EWW_RAM.used_mem_perc}
     :onchange "")
     (metric :label "💾"
       :value {round((1 - (EWW_DISK["/"].free / EWW_DISK["/"].total)) * 100, 0)}
     :onchange "")
-  time))
+    (metric :label "🕓"
+      :value cpu_usage_percent
+    :onchange "")
+  )
+)
 
 (defwidget workspaces []
   (box :class "workspaces"
@@ -24,21 +48,24 @@
     :space-evenly true
     :halign "start"
     :spacing 10
-    (button :onclick "wmctrl -s 0" 1)
-    (button :onclick "wmctrl -s 1" 2)
-    (button :onclick "wmctrl -s 2" 3)
-    (button :onclick "wmctrl -s 3" 4)
-    (button :onclick "wmctrl -s 4" 5)
-    (button :onclick "wmctrl -s 5" 6)
-    (button :onclick "wmctrl -s 6" 7)
-    (button :onclick "wmctrl -s 7" 8)
-    (button :onclick "wmctrl -s 8" 9)))
+    (button :onclick "hyprctl dispatch workspace 1" 1)
+    (button :onclick "hyprctl dispatch workspace 2" 2)
+    (button :onclick "hyprctl dispatch workspace 3" 3)
+    (button :onclick "hyprctl dispatch workspace 4" 4)
+    (button :onclick "hyprctl dispatch workspace 5" 5)
+    (button :onclick "hyprctl dispatch workspace 6" 6)
+    (button :onclick "hyprctl dispatch workspace 7" 7)
+    (button :onclick "hyprctl dispatch workspace 8" 8)
+    (button :onclick "hyprctl dispatch workspace 9" 9)
+    (button :onclick "hyprctl dispatch workspace 0" 0)
+  ))
 
 (defwidget music []
   (box :class "music"
     :orientation "h"
     :space-evenly false
     :halign "center"
+    :onclick ""
   {music != "" ? "🎵${music}" : ""}))
 
 
@@ -53,18 +80,34 @@
       :value value
     :onchange onchange)))
 
-
-
 (deflisten music :initial ""
-"playerctl --follow metadata --format '{{ artist }} - {{ title }}' || true")
+"nix run nixpkgs#playerctl -- --follow metadata --format '{{ title }}' || true")
+
+(defpoll bluetooth :interval "1s"
+"rfkill -o TYPE,SOFT list -n | grep bluetooth | sed -E 's/bluetooth\s+//g'")
+
+(defpoll wifi :interval "1s"
+"rfkill -o TYPE,SOFT list -n | grep wlan | sed -E 's/wlan\s+//g'")
 
 (defpoll volume :interval "1s"
-"scripts/getvol")
+"nix run nixpkgs#pamixer -- --get-volume")
 
-(defpoll time :interval "10s"
-"date '+%H:%M %b %d, %Y'")
+(defpoll battery_cap :interval "5m"
+"cat /sys/class/power_supply/BAT*/capacity"
+)
 
-(defwindow bar-eDP1
+(defpoll battery_status :interval "1s"
+"cat /sys/class/power_supply/BAT*/status"
+)
+
+(defpoll cpu_usage_percent :interval "5s"
+"bash scripts/cpu_usage"
+)
+
+(defpoll time :interval "1s"
+"date '+%H:%M:%S  %b %d, %Y'")
+
+(defwindow bar-primary
   :monitor 0
   :windowtype "dock"
   :geometry (geometry :x "0%"
@@ -74,25 +117,3 @@
   :anchor "top center")
   :exclusive true
   (bar))
-
-(defwindow bar-HDMI-A-1
-  :monitor 0
-  :windowtype "dock"
-  :geometry (geometry :x "0%"
-    :y "0%"
-    :width "100%"
-    :height "10px"
-  :anchor "top center")
-  :exclusive true
-  (bar))
-
-(defwindow bar-DP7
-  :monitor 0
-  :windowtype "dock"
-  :geometry (geometry :x "0%"
-    :y "0%"
-    :width "100%"
-    :height "10px"
-  :anchor "top center")
-  :exclusive true
-  (bar))
\ No newline at end of file
diff --git a/modules/home/eww/config/scripts/cpu_usage b/modules/home/eww/config/scripts/cpu_usage
new file mode 100644
index 0000000..62d9af7
--- /dev/null
+++ b/modules/home/eww/config/scripts/cpu_usage
@@ -0,0 +1,7 @@
+CPU=$(sed -n 's/^cpu\s//p' /proc/stat);
+TOTAL=$(($(T=0; for VAL in $CPU; do T=($((T))+$((VAL))); done; echo $T)));
+IDLE=${CPU[4]};
+IDLE_FRAC=$(echo $(($IDLE.00/$TOTAL)));
+IN_USE=$(echo $(( 1.00 - $IDLE_FRAC )));
+NUM=$(( $IN_USE * 100 ));
+echo $NUM
\ No newline at end of file
diff --git a/modules/home/eww/default.nix b/modules/home/eww/default.nix
index 2159bfe..b9a60be 100644
--- a/modules/home/eww/default.nix
+++ b/modules/home/eww/default.nix
@@ -1,7 +1,20 @@
-{ inputs, pkgs, ... }: {
+{ inputs, pkgs, ... }:
+{
   programs.eww = {
     enable = true;
     package = pkgs.eww-wayland;
     configDir = ./config;
   };
-}
\ No newline at end of file
+
+  /* bluetoothctl
+     wpa_cli
+     pamixer
+     rfkill -> util-linux
+     cat
+     bash
+     date
+  */
+  # wpa_cli disable_network
+
+  # $RUN_wpa_cli
+}
diff --git a/modules/home/gestures/default.nix b/modules/home/gestures/default.nix
index 6abbbe4..73bdb83 100644
--- a/modules/home/gestures/default.nix
+++ b/modules/home/gestures/default.nix
@@ -1,11 +1,14 @@
-{ lib, config, ... }: {
-  options.minion.touchpadGestures.enable = lib.mkEnableOption "Enable touchpad gestures";
+{ lib, config, ... }:
+{
+  options.chimera.touchpad.enable = lib.mkEnableOption "Enable touchpad gestures";
 
-  config = lib.mkIf config.minion.touchpadGestures.enable {
+  config = lib.mkIf config.chimera.touchpad.enable {
     services.fusuma.enable = true;
 
     systemd.user.startServices = "sd-switch";
 
-    systemd.user.services.fusuma.Unit.X-Restart-Triggers = [ config.xdg.configFile."fusuma/config.yaml".source ];
+    systemd.user.services.fusuma.Unit.X-Restart-Triggers = [
+      config.xdg.configFile."fusuma/config.yaml".source
+    ];
   };
-}
\ No newline at end of file
+}
diff --git a/modules/home/hyprland/default.nix b/modules/home/hyprland/default.nix
index a2f8b88..ce1a300 100644
--- a/modules/home/hyprland/default.nix
+++ b/modules/home/hyprland/default.nix
@@ -1,93 +1,164 @@
-{ pkgs, config, inputs, system, ... }: let
+{
+  pkgs,
+  config,
+  inputs,
+  system,
+  lib,
+  ...
+}:
+let
   lock = "${pkgs.waylock}/bin/waylock";
-in {
+in
+{
+  options.chimera.hyprland = {
+    enable = lib.mkEnableOption "Use hyprland as your window manager";
+
+    monitors = lib.mkOption {
+      type = lib.types.listOf lib.types.str;
+      description = "List of default monitors to set";
+      default = [ ];
+    };
+  };
+
+  /* general = {
+       gaps_in = 5;
+       gaps_out = 20;
+
+       border_size = 1;
+       "col.active_border" = "rgba(71AEF5EE)";
+       "col.inactive_border" = "rgba(C4C4C4EE)";
+
+       layout = "dwindle";
+     };
+
+     dwindle = {
+       pseudotile = true;
+       smart_split = true;
+     };
+
+     master = {
+       allow_small_split = true;
+       new_is_master = true;
+     };
+
+     decoration = {
+       rounding = 7;
+
+       drop_shadow = true;
+       shadow_range = 4;
+       shadow_render_power = 3;
+       "col.shadow" = "rgba(1a1a1aee)";
+     };
+  */
 
   # TODO: Eww, SwayNC, hyprland-per-window-layout, waylock, hy3, anyrun, hypr-empty
 
-  home.packages = [ pkgs.hyprpicker ];
+  config = lib.mkIf config.chimera.hyprland.enable {
+    home.packages = [ pkgs.hyprpicker ];
 
-  minion.touchpadGestures.enable = true;
+    services.fusuma.settings.swipe = lib.mkIf config.chimera.touchpad.enable (
+      let
+        hyprctl = "${config.wayland.windowManager.hyprland.package}/bin/hyprctl";
+        jq = "${pkgs.jq}/bin/jq";
+        awk = "${pkgs.gawk}/bin/awk";
+      in
+      {
+        "3".up.command = "${hyprctl} dispatch fullscreen 0";
+        "3".down.command = "${hyprctl} dispatch fullscreen 0";
+        "4".down.command = lock;
+        "3".left.command = "${hyprctl} dispatch workspace $(${hyprctl} activeworkspace -j | ${jq} .id | ${awk} '{print $1+1}')";
+        "3".right.command = "${hyprctl} dispatch workspace $(${hyprctl} activeworkspace -j | ${jq} .id | ${awk} '{print $1-1}')";
+      }
+    );
 
-  services.fusuma.settings.swipe = let 
-    hyprctl = "${config.wayland.windowManager.hyprland.package}/bin/hyprctl";
-    jq = "${pkgs.jq}/bin/jq";
-    awk = "${pkgs.gawk}/bin/awk";
-  in {
-    "3".up.command = "${hyprctl} dispatch fullscreen 0";
-    "3".down.command = "${hyprctl} dispatch fullscreen 0";
-    "4".down.command = lock;
-    "3".left.command = "${hyprctl} dispatch workspace $(${hyprctl} activeworkspace -j | ${jq} .id | ${awk} '{print $1+1}')";
-    "3".right.command = "${hyprctl} dispatch workspace $(${hyprctl} activeworkspace -j | ${jq} .id | ${awk} '{print $1-1}')";
-  };
+    wayland.windowManager.hyprland = {
+      enable = true;
 
-  wayland.windowManager.hyprland = {
-    enable = true;
+      xwayland.enable = true;
+      systemd.enable = true;
 
-    xwayland.enable = true;
-    systemd.enable = true;
+      settings =
+        let
+          mod = "SUPER";
+          terminal = "${pkgs.kitty}/bin/kitty";
+          menu = "${inputs.anyrun.packages.${system}.anyrun}/bin/anyrun";
+        in
+        {
+          misc = {
+            disable_hyprland_logo = true;
+            disable_splash_rendering = true;
+          };
 
-    settings = let
-      mod = "SUPER";
-      terminal = "${pkgs.kitty}/bin/kitty";
-      menu = "${inputs.anyrun.packages.${system}.anyrun}/bin/anyrun";
-    in {
-      misc = {
-        disable_hyprland_logo = true;
-        disable_splash_rendering = true;
-      };
+          exec-once = "${pkgs.hyprpaper}/bin/hyprpaper";
 
-      exec-once = "${pkgs.hyprpaper}/bin/hyprpaper";
+          monitor = config.chimera.hyprland.monitors ++ [ ",preferred,auto,1" ];
 
-      monitor = [
-        "eDP-1,preferred,0x0,1"
-        "desc:Dell Inc. DELL P2715Q V7WP95AV914L,preferred,2256x-1956,1,transform,1"
-        "desc:AOC 2460G5 0x00023C3F,preferred,336x-1080,1"
-        ",preferred,auto,1" # https://wiki.hyprland.org/Configuring/Monitors/
-      ];
+          decoration = {
+            rounding = 7;
+          };
 
-      input = {
-        kb_layout = "us";
-        kb_variant = "dvorak";
-        natural_scroll = true;
+          input = {
+            kb_layout = "us";
+            kb_variant = "dvorak";
+            natural_scroll = true;
 
-        touchpad = {
-          natural_scroll = true;
-        };
-      };
+            touchpad = {
+              natural_scroll = true;
+            };
+          };
 
-      xwayland = {
-        force_zero_scaling = true;
-      };
+          xwayland = {
+            force_zero_scaling = 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}, L, exec, ${lock}"
-        "${mod}, D, 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)}"
+          dwindle = {
+            pseudotile = true;
+            smart_split = true;
+          };
+
+          master = {
+            allow_small_split = true;
+            new_is_master = true;
+          };
+
+          windowrulev2 = [ "opacity 1.0 0.85,title:(.*)" ];
+
+          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}, L, exec, ${lock}"
+              "${mod}, D, exec, ${menu}"
             ]
-          )
-          10)
-      );
+            ++ (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"
-      ];
+          bindm = [
+            "${mod}, mouse:272, movewindow"
+            "${mod}, mouse:273, resizewindow"
+          ];
+        };
     };
   };
-}
\ No newline at end of file
+}
diff --git a/modules/home/hyprpaper/default.nix b/modules/home/hyprpaper/default.nix
index c378a21..27d149a 100644
--- a/modules/home/hyprpaper/default.nix
+++ b/modules/home/hyprpaper/default.nix
@@ -1,9 +1,31 @@
-{ ... }: {
-  config.xdg.configFile."hypr/hyprpaper.conf".source = builtins.toFile "hyprpaper.conf" ''
-    preload = ${./wallpaper.png}
+{ config, lib, ... }:
+{
+  options.chimera = {
+    wallpaper = lib.mkOption {
+      type = lib.types.path;
+      description = "Wallpaper of your choosing";
+    };
+    hyprland.hyprpaper.splash = {
+      enable = lib.mkEnableOption "Enable the hyprland splash text";
+      offset = lib.mkOption {
+        type = lib.types.float;
+        description = "Set the splash offset";
+        default = 2.0;
+      };
+    };
+  };
 
-    wallpaper=,${./wallpaper.png}
+  # TODO: wallpapers path[] -> gen wallpaper lines...
+  config.xdg.configFile."hypr/hyprpaper.conf".source = lib.mkIf config.chimera.hyprland.enable (
+    builtins.toFile "hyprpaper.conf" ''
+      preload = ${config.chimera.wallpaper}
 
-    splash = true
-  '';
+      wallpaper=,${config.chimera.wallpaper}
+
+      splash = ${builtins.toString config.chimera.hyprland.hyprpaper.splash.enable}
+      splash_offset = ${builtins.toString config.chimera.hyprland.hyprpaper.splash.offset}
+
+      ipc = off
+    ''
+  );
 }
diff --git a/modules/home/hyprpaper/wallpaper.png b/modules/home/hyprpaper/wallpaper.png
deleted file mode 100644
index 409ae38..0000000
--- a/modules/home/hyprpaper/wallpaper.png
+++ /dev/null
Binary files differ
diff --git a/modules/home/manual/default.nix b/modules/home/manual/default.nix
index 8709a09..ca5804a 100644
--- a/modules/home/manual/default.nix
+++ b/modules/home/manual/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
 
 {
   manual.manpages.enable = true;
diff --git a/modules/home/nix-index/default.nix b/modules/home/nix-index/default.nix
index 1345dc7..7ff8acb 100644
--- a/modules/home/nix-index/default.nix
+++ b/modules/home/nix-index/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
 
 {
   xdg.enable = true;
diff --git a/modules/home/stateVersion/default.nix b/modules/home/stateVersion/default.nix
index 2e40de6..7d073d6 100644
--- a/modules/home/stateVersion/default.nix
+++ b/modules/home/stateVersion/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+  config,
+  lib,
+  pkgs,
+  ...
+}:
 
 {
   home.stateVersion = "24.05";
diff --git a/modules/home/theme/default.nix b/modules/home/theme/default.nix
new file mode 100644
index 0000000..5fdb405
--- /dev/null
+++ b/modules/home/theme/default.nix
@@ -0,0 +1,56 @@
+{
+  pkgs,
+  config,
+  lib,
+  ...
+}:
+{
+  options.chimera.theme = {
+    cursor = null;
+    colors =
+      let
+        themeColor = {
+          hex = lib.types.str;
+          rgb = {
+            r = lib.types.numbers 0 255;
+            g = lib.types.numbers 0 255;
+            b = lib.types.numbers 0 255;
+          };
+          hsl = {
+            h = lib.types.numbers 0 360;
+            s = lib.types.numbers 0 100;
+            l = lib.types.numbers 0 100;
+          };
+        };
+      in
+      {
+        Rosewater = lib.mkOption { type = themeColor; };
+        Flamingo = lib.mkOption { type = themeColor; };
+        Pink = lib.mkOption { type = themeColor; };
+        Mauve = lib.mkOption { type = themeColor; };
+        Red = lib.mkOption { type = themeColor; };
+        Maroon = lib.mkOption { type = themeColor; };
+        Peach = lib.mkOption { type = themeColor; };
+        Yellow = lib.mkOption { type = themeColor; };
+        Green = lib.mkOption { type = themeColor; };
+        Teal = lib.mkOption { type = themeColor; };
+        Sky = lib.mkOption { type = themeColor; };
+        Sapphire = lib.mkOption { type = themeColor; };
+        Blue = lib.mkOption { type = themeColor; };
+        Lavender = lib.mkOption { type = themeColor; };
+        Text = lib.mkOption { type = themeColor; };
+        Subtext1 = lib.mkOption { type = themeColor; };
+        Subtext0 = lib.mkOption { type = themeColor; };
+        Overlay2 = lib.mkOption { type = themeColor; };
+        Overlay1 = lib.mkOption { type = themeColor; };
+        Overlay0 = lib.mkOption { type = themeColor; };
+        Surface2 = lib.mkOption { type = themeColor; };
+        Surface1 = lib.mkOption { type = themeColor; };
+        Surface0 = lib.mkOption { type = themeColor; };
+        Base = lib.mkOption { type = themeColor; };
+        Mantle = lib.mkOption { type = themeColor; };
+        Crust = lib.mkOption { type = themeColor; };
+        Highlight = lib.mkOption { type = themeColor; };
+      };
+  };
+}
diff --git a/modules/home/tinycarton/default.nix b/modules/home/tinycarton/default.nix
new file mode 100644
index 0000000..ede0121
--- /dev/null
+++ b/modules/home/tinycarton/default.nix
@@ -0,0 +1,4 @@
+{ pkgs, ... }:
+{
+  home.packages = [ pkgs.chimera.nix-provider ];
+}
