chore: flake update and patch warnings

Change-Id: Ia82219292b1390de93be389da94886d37a7b8461
Reviewed-on: https://git.clicks.codes/c/Chimera/NixFiles/+/885
Tested-by: Samuel Shuert <coded@clicks.codes>
Reviewed-by: Skyler Grey <minion@clicks.codes>
diff --git a/flake.lock b/flake.lock
index fec320d..40fc096 100644
--- a/flake.lock
+++ b/flake.lock
@@ -25,11 +25,11 @@
         "systems": "systems"
       },
       "locked": {
-        "lastModified": 1721135360,
-        "narHash": "sha256-ZhSA0e45UxiOAjEVqkym/aULh0Dt+KHJLNda7bjx9UI=",
+        "lastModified": 1730444665,
+        "narHash": "sha256-i3FxeHjsHw4AePx3AWVVywy92EEobx/ZER4ignWxNrE=",
         "owner": "Kirottu",
         "repo": "anyrun",
-        "rev": "c6101a31a80b51e32e96f6a77616b609770172e0",
+        "rev": "b3b4f2253d43af3311b3d3fc86973fc3e9559c33",
         "type": "github"
       },
       "original": {
@@ -89,16 +89,15 @@
     },
     "emacs-overlay": {
       "inputs": {
-        "flake-utils": "flake-utils",
         "nixpkgs": "nixpkgs",
         "nixpkgs-stable": "nixpkgs-stable"
       },
       "locked": {
-        "lastModified": 1726589963,
-        "narHash": "sha256-LkX+N4p5kstKfgRHb+PBOEKXALVx7yjhKMahTeIlopY=",
+        "lastModified": 1730826798,
+        "narHash": "sha256-QE7sHcAIolvAMbHSWZQ5nB2R17C2R/9YB5Q6CR70Hug=",
         "owner": "nix-community",
         "repo": "emacs-overlay",
-        "rev": "d6bf6cdb34b7e1acd2c3be4cf19b3f4be9ae0957",
+        "rev": "1febd5c1ad7e798543c886756c598e0fb8d473fd",
         "type": "github"
       },
       "original": {
@@ -126,11 +125,11 @@
     "firefox-sidebery-gnome": {
       "flake": false,
       "locked": {
-        "lastModified": 1723137499,
-        "narHash": "sha256-MOE9NeU2i6Ws1GhGmppMnjOHkNLl2MQMJmGhaMzdoJM=",
+        "lastModified": 1730674701,
+        "narHash": "sha256-lf9MQs8+NUvQd8b5t+7c4kLqUQixGO9WwWcLa1XYuiQ=",
         "owner": "rafaelmardojai",
         "repo": "firefox-gnome-theme",
-        "rev": "fb5b578a4f49ae8705e5fea0419242ed1b8dba70",
+        "rev": "823756d8ddd21cfd3a24a87dad402e490e0eb5ee",
         "type": "github"
       },
       "original": {
@@ -163,11 +162,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1717285511,
-        "narHash": "sha256-iKzJcpdXih14qYVcZ9QC9XuZYnPc6T8YImb6dX166kw=",
+        "lastModified": 1727826117,
+        "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
         "owner": "hercules-ci",
         "repo": "flake-parts",
-        "rev": "2a55567fcf15b1b1c7ed712a2c6fadaec7412ea8",
+        "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
         "type": "github"
       },
       "original": {
@@ -181,11 +180,11 @@
         "nixpkgs-lib": "nixpkgs-lib"
       },
       "locked": {
-        "lastModified": 1726153070,
-        "narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=",
+        "lastModified": 1730504689,
+        "narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=",
         "owner": "hercules-ci",
         "repo": "flake-parts",
-        "rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a",
+        "rev": "506278e768c2a08bec68eb62932193e341f55c90",
         "type": "github"
       },
       "original": {
@@ -199,11 +198,11 @@
         "systems": "systems_2"
       },
       "locked": {
-        "lastModified": 1726560853,
-        "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=",
+        "lastModified": 1710146030,
+        "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
         "owner": "numtide",
         "repo": "flake-utils",
-        "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a",
+        "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
         "type": "github"
       },
       "original": {
@@ -214,7 +213,7 @@
     },
     "flake-utils-plus": {
       "inputs": {
-        "flake-utils": "flake-utils_5"
+        "flake-utils": "flake-utils_4"
       },
       "locked": {
         "lastModified": 1715533576,
@@ -272,24 +271,6 @@
         "systems": "systems_5"
       },
       "locked": {
-        "lastModified": 1710146030,
-        "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
-        "owner": "numtide",
-        "repo": "flake-utils",
-        "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
-        "type": "github"
-      },
-      "original": {
-        "owner": "numtide",
-        "repo": "flake-utils",
-        "type": "github"
-      }
-    },
-    "flake-utils_5": {
-      "inputs": {
-        "systems": "systems_6"
-      },
-      "locked": {
         "lastModified": 1694529238,
         "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
         "owner": "numtide",
@@ -325,11 +306,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1726593622,
-        "narHash": "sha256-ZtPJLbeyqSXOeHTBzQJRAM7sFjOxsqTO+ozigqCxyj8=",
+        "lastModified": 1730633670,
+        "narHash": "sha256-ZFJqIXpvVKvzOVFKWNRDyIyAo+GYdmEPaYi1bZB6uf0=",
         "owner": "nix-community",
         "repo": "home-manager",
-        "rev": "4a4a8b145463ccfef579bb0e26275c97bf0b5bf2",
+        "rev": "8f6ca7855d409aeebe2a582c6fd6b6a8d0bf5661",
         "type": "github"
       },
       "original": {
@@ -340,10 +321,8 @@
     },
     "jujutsu": {
       "inputs": {
-        "flake-utils": "flake-utils_2",
-        "nixpkgs": [
-          "nixpkgs"
-        ],
+        "flake-utils": "flake-utils",
+        "nixpkgs": "nixpkgs_2",
         "rust-overlay": "rust-overlay"
       },
       "locked": {
@@ -377,7 +356,7 @@
     },
     "lix-module": {
       "inputs": {
-        "flake-utils": "flake-utils_3",
+        "flake-utils": "flake-utils_2",
         "flakey-profile": "flakey-profile",
         "lix": "lix",
         "nixpkgs": [
@@ -417,11 +396,11 @@
         "xwayland-satellite-unstable": "xwayland-satellite-unstable"
       },
       "locked": {
-        "lastModified": 1726595793,
-        "narHash": "sha256-3TL/g2mCfe88ehUtoGh82HF9lKRgCpFHSIXli9yB+Sk=",
+        "lastModified": 1730836044,
+        "narHash": "sha256-ZmyZSNyP+73yrMdEwQGaTRrvQloMDj6WfCUBVvzTu5M=",
         "owner": "sodiboo",
         "repo": "niri-flake",
-        "rev": "318b1ef1b47bc30dddd0b14b0a8a2093039e275a",
+        "rev": "0691486e9b432334ba7d457abc0020c8e075b9f2",
         "type": "github"
       },
       "original": {
@@ -454,11 +433,11 @@
         ]
       },
       "locked": {
-        "lastModified": 1726449931,
-        "narHash": "sha256-1AX7MyYzP7sNgZiGF8jwehCCI75y2kBGwACeryJs+yE=",
+        "lastModified": 1730604744,
+        "narHash": "sha256-/MK6QU4iOozJ4oHTfZipGtOgaT/uy/Jm4foCqHQeYR4=",
         "owner": "nix-community",
         "repo": "nix-index-database",
-        "rev": "c1b0fa0bec5478185eae2fd3f39b9e906fc83995",
+        "rev": "cc2ddbf2df8ef7cc933543b1b42b845ee4772318",
         "type": "github"
       },
       "original": {
@@ -469,11 +448,11 @@
     },
     "nixos-hardware": {
       "locked": {
-        "lastModified": 1726489388,
-        "narHash": "sha256-JBHtN+n1HzKawpnOQAz6jdgvrtYV9c/kyzgoIdguQGo=",
+        "lastModified": 1730828750,
+        "narHash": "sha256-XrnZLkLiBYNlwV5gus/8DT7nncF1TS5la6Be7rdVOpI=",
         "owner": "nixos",
         "repo": "nixos-hardware",
-        "rev": "dc8b0296f68f72f3fe77469c549a6f098555c2e9",
+        "rev": "2e78b1af8025108ecd6edaa3ab09695b8a4d3d55",
         "type": "github"
       },
       "original": {
@@ -485,11 +464,11 @@
     },
     "nixpkgs": {
       "locked": {
-        "lastModified": 1726463316,
-        "narHash": "sha256-gI9kkaH0ZjakJOKrdjaI/VbaMEo9qBbSUl93DnU7f4c=",
+        "lastModified": 1730531603,
+        "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172",
+        "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d",
         "type": "github"
       },
       "original": {
@@ -501,23 +480,23 @@
     },
     "nixpkgs-lib": {
       "locked": {
-        "lastModified": 1725233747,
-        "narHash": "sha256-Ss8QWLXdr2JCBPcYChJhz4xJm+h/xjl4G0c0XlP6a74=",
+        "lastModified": 1730504152,
+        "narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=",
         "type": "tarball",
-        "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz"
+        "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz"
       },
       "original": {
         "type": "tarball",
-        "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz"
+        "url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz"
       }
     },
     "nixpkgs-stable": {
       "locked": {
-        "lastModified": 1726447378,
-        "narHash": "sha256-2yV8nmYE1p9lfmLHhOCbYwQC/W8WYfGQABoGzJOb1JQ=",
+        "lastModified": 1730741070,
+        "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "086b448a5d54fd117f4dc2dee55c9f0ff461bdc1",
+        "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
         "type": "github"
       },
       "original": {
@@ -529,11 +508,27 @@
     },
     "nixpkgs-stable_2": {
       "locked": {
-        "lastModified": 1725762081,
-        "narHash": "sha256-vNv+aJUW5/YurRy1ocfvs4q/48yVESwlC/yHzjkZSP8=",
+        "lastModified": 1730741070,
+        "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
+        "owner": "nixos",
+        "repo": "nixpkgs",
+        "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
+        "type": "github"
+      },
+      "original": {
+        "owner": "nixos",
+        "ref": "nixos-24.05",
+        "repo": "nixpkgs",
+        "type": "github"
+      }
+    },
+    "nixpkgs-stable_3": {
+      "locked": {
+        "lastModified": 1730602179,
+        "narHash": "sha256-efgLzQAWSzJuCLiCaQUCDu4NudNlHdg2NzGLX5GYaEY=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "dc454045f5b5d814e5862a6d057e7bb5c29edc05",
+        "rev": "3c2f1c4ca372622cb2f9de8016c9a0b1cbd0f37c",
         "type": "github"
       },
       "original": {
@@ -545,11 +540,24 @@
     },
     "nixpkgs_2": {
       "locked": {
-        "lastModified": 1726463316,
-        "narHash": "sha256-gI9kkaH0ZjakJOKrdjaI/VbaMEo9qBbSUl93DnU7f4c=",
+        "lastModified": 1728492678,
+        "narHash": "sha256-9UTxR8eukdg+XZeHgxW5hQA9fIKHsKCdOIUycTryeVw=",
+        "path": "/nix/store/60sn02zhawl3kwn0r515zff3h6hg6ydz-source",
+        "rev": "5633bcff0c6162b9e4b5f1264264611e950c8ec7",
+        "type": "path"
+      },
+      "original": {
+        "id": "nixpkgs",
+        "type": "indirect"
+      }
+    },
+    "nixpkgs_3": {
+      "locked": {
+        "lastModified": 1730785428,
+        "narHash": "sha256-Zwl8YgTVJTEum+L+0zVAWvXAGbWAuXHax3KzuejaDyo=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "99dc8785f6a0adac95f5e2ab05cc2e1bf666d172",
+        "rev": "4aa36568d413aca0ea84a1684d2d46f55dbabad7",
         "type": "github"
       },
       "original": {
@@ -559,7 +567,7 @@
         "type": "github"
       }
     },
-    "nixpkgs_3": {
+    "nixpkgs_4": {
       "locked": {
         "lastModified": 1722940684,
         "narHash": "sha256-X8JnSq0ruRWsU4PdYuxV+8W4W66F1lnCcxIZZMWzo4E=",
@@ -575,13 +583,13 @@
         "type": "github"
       }
     },
-    "nixpkgs_4": {
+    "nixpkgs_5": {
       "locked": {
-        "lastModified": 1725534445,
-        "narHash": "sha256-Yd0FK9SkWy+ZPuNqUgmVPXokxDgMJoGuNpMEtkfcf84=",
+        "lastModified": 1730272153,
+        "narHash": "sha256-B5WRZYsRlJgwVHIV6DvidFN7VX7Fg9uuwkRW9Ha8z+w=",
         "owner": "NixOS",
         "repo": "nixpkgs",
-        "rev": "9bb1e7571aadf31ddb4af77fc64b2d59580f9a39",
+        "rev": "2d2a9ddbe3f2c00747398f3dc9b05f7f2ebb0f53",
         "type": "github"
       },
       "original": {
@@ -591,13 +599,13 @@
         "type": "github"
       }
     },
-    "nixpkgs_5": {
+    "nixpkgs_6": {
       "locked": {
-        "lastModified": 1725634671,
-        "narHash": "sha256-v3rIhsJBOMLR8e/RNWxr828tB+WywYIoajrZKFM+0Gg=",
+        "lastModified": 1727348695,
+        "narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=",
         "owner": "nixos",
         "repo": "nixpkgs",
-        "rev": "574d1eac1c200690e27b8eb4e24887f8df7ac27c",
+        "rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784",
         "type": "github"
       },
       "original": {
@@ -609,11 +617,11 @@
     },
     "nur": {
       "locked": {
-        "lastModified": 1726601742,
-        "narHash": "sha256-QTMgXj8uDL/ynuAKHGV6oi45Cxx1HqKnkDGzn5MYvD4=",
+        "lastModified": 1730832632,
+        "narHash": "sha256-S4drRHRb42uqXfYLHl+oZsvFdo2LSJFXFhNtqGfumDI=",
         "owner": "nix-community",
         "repo": "nur",
-        "rev": "b14a76d2914b710242d3a5cecadb369ec60762f8",
+        "rev": "c68e686c8d16ab2e89996f3cac9b3a14b52aa342",
         "type": "github"
       },
       "original": {
@@ -626,16 +634,16 @@
       "inputs": {
         "advisory-db": "advisory-db",
         "crane": "crane",
-        "flake-utils": "flake-utils_4",
-        "nixpkgs": "nixpkgs_3",
+        "flake-utils": "flake-utils_3",
+        "nixpkgs": "nixpkgs_4",
         "rust-overlay": "rust-overlay_2"
       },
       "locked": {
-        "lastModified": 1726156797,
-        "narHash": "sha256-mB1SCJuH1iH8FES5Z51dI/EfaeympowKYNkA0R9sovs=",
+        "lastModified": 1730805492,
+        "narHash": "sha256-hLrhvmecH7LN+vGVi2oBPQuZKRxLtV2Nc1brF1Ha0T4=",
         "ref": "refs/heads/master",
-        "rev": "e130b4dc06ca02a035519e1ea86ffeafc788866f",
-        "revCount": 2106,
+        "rev": "f6aa46a283f63025882551a27e6d2145939560f5",
+        "revCount": 2124,
         "type": "git",
         "url": "https://seed.radicle.xyz/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git"
       },
@@ -658,7 +666,8 @@
         "niri-flake": "niri-flake",
         "nix-index-database": "nix-index-database",
         "nixos-hardware": "nixos-hardware",
-        "nixpkgs": "nixpkgs_2",
+        "nixpkgs": "nixpkgs_3",
+        "nixpkgs-stable": "nixpkgs-stable_2",
         "nur": "nur",
         "radicle": "radicle",
         "snowfall-lib": "snowfall-lib",
@@ -734,15 +743,15 @@
     },
     "sops-nix": {
       "inputs": {
-        "nixpkgs": "nixpkgs_4",
-        "nixpkgs-stable": "nixpkgs-stable_2"
+        "nixpkgs": "nixpkgs_5",
+        "nixpkgs-stable": "nixpkgs-stable_3"
       },
       "locked": {
-        "lastModified": 1726524647,
-        "narHash": "sha256-qis6BtOOBBEAfUl7FMHqqTwRLB61OL5OFzIsOmRz2J4=",
+        "lastModified": 1730746162,
+        "narHash": "sha256-ZGmI+3AbT8NkDdBQujF+HIxZ+sWXuyT6X8B49etWY2g=",
         "owner": "Mic92",
         "repo": "sops-nix",
-        "rev": "e2d404a7ea599a013189aa42947f66cede0645c8",
+        "rev": "59d6988329626132eaf107761643f55eb979eef1",
         "type": "github"
       },
       "original": {
@@ -826,21 +835,6 @@
         "type": "github"
       }
     },
-    "systems_6": {
-      "locked": {
-        "lastModified": 1681028828,
-        "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
-        "owner": "nix-systems",
-        "repo": "default",
-        "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
-        "type": "github"
-      },
-      "original": {
-        "owner": "nix-systems",
-        "repo": "default",
-        "type": "github"
-      }
-    },
     "templates": {
       "locked": {
         "lastModified": 1708553502,
@@ -859,16 +853,16 @@
     "xwayland-satellite-stable": {
       "flake": false,
       "locked": {
-        "lastModified": 1718165778,
-        "narHash": "sha256-dwF9nI54a6Fo9XU5s4qmvMXSgCid3YQVGxch00qEMvI=",
+        "lastModified": 1730166465,
+        "narHash": "sha256-nq7bouXQXaaPPo/E+Jbq+wNHnatD4dY8OxSrRqzvy6s=",
         "owner": "Supreeeme",
         "repo": "xwayland-satellite",
-        "rev": "b6d281967cb0b7bf1dfdb8d0f597b517dc4aa5c5",
+        "rev": "a713cf46cb7db84a0d1b57c3a397c610cad3cf98",
         "type": "github"
       },
       "original": {
         "owner": "Supreeeme",
-        "ref": "v0.4",
+        "ref": "v0.5",
         "repo": "xwayland-satellite",
         "type": "github"
       }
@@ -876,11 +870,11 @@
     "xwayland-satellite-unstable": {
       "flake": false,
       "locked": {
-        "lastModified": 1726378112,
-        "narHash": "sha256-OANPb73V/RQDqtpIcbzeJ93KuOHKFQv+1xXC44Ut7tY=",
+        "lastModified": 1730258684,
+        "narHash": "sha256-E+69sdxUhPSNI8+JlTL6KKbNv5qVD3L1y8hdVO37A44=",
         "owner": "Supreeeme",
         "repo": "xwayland-satellite",
-        "rev": "b962a0f33b503aa39c9cf6919f488b664e5b79b4",
+        "rev": "b0ee6db9fa9901c675b3c7e952c2a8ce987a0f58",
         "type": "github"
       },
       "original": {
@@ -891,14 +885,14 @@
     },
     "zen-browser": {
       "inputs": {
-        "nixpkgs": "nixpkgs_5"
+        "nixpkgs": "nixpkgs_6"
       },
       "locked": {
-        "lastModified": 1726001766,
-        "narHash": "sha256-ADvEWfo0AuHR06ah1nnzOyhsG05/b5QpUc7vFNbiEfM=",
+        "lastModified": 1727721329,
+        "narHash": "sha256-QYlWZwUSwrM7BuO+dXclZIwoPvBIuJr6GpFKv9XKFPI=",
         "owner": "MarceColl",
         "repo": "zen-browser-flake",
-        "rev": "06505a088396e2c0b9ad100302502783a6bcdb40",
+        "rev": "e6ab73f405e9a2896cce5956c549a9cc359e5fcc",
         "type": "github"
       },
       "original": {
diff --git a/flake.nix b/flake.nix
index 5cc32f3..d542000 100644
--- a/flake.nix
+++ b/flake.nix
@@ -33,7 +33,7 @@
 
     jujutsu = {
       url = "github:martinvonz/jj?rev=a43b0cde97e14b92dace47ead9f0e968310cab4e";
-      inputs.nixpkgs.follows = "nixpkgs";
+      # inputs.nixpkgs.follows = "nixpkgs";
     };
 
     lix-module = {
@@ -59,6 +59,8 @@
 
     nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
 
+    nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.05";
+
     nur.url = "github:nix-community/nur";
 
     radicle.url = "git+https://seed.radicle.xyz/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git";
diff --git a/modules/home/terminal/default.nix b/modules/home/terminal/default.nix
index 57a4548..5d5ebdc 100644
--- a/modules/home/terminal/default.nix
+++ b/modules/home/terminal/default.nix
@@ -20,7 +20,7 @@
 
     programs.kitty = {
       enable = true;
-      theme =
+      themeFile =
         if config.chimera.theme.catppuccin.enable then
           "Catppuccin-${config.chimera.theme.catppuccin.style}"
         else
diff --git a/modules/home/wayland/default.nix b/modules/home/wayland/default.nix
index e6b05df..5ad25f6 100644
--- a/modules/home/wayland/default.nix
+++ b/modules/home/wayland/default.nix
@@ -44,6 +44,7 @@
         example = "dvorak";
         default = "";
       };
+      appleMagic = lib.mkEnableOption "Emulate PC keys on Apple Magic Keyboard";
     };
 
     input.keybinds.alternativeSearch.enable = lib.mkEnableOption "Use alt + space or SUPER + D to open search";
diff --git a/modules/home/wayland/hyprland/default.nix b/modules/home/wayland/hyprland/default.nix
index 5dee95f..098a33c 100644
--- a/modules/home/wayland/hyprland/default.nix
+++ b/modules/home/wayland/hyprland/default.nix
@@ -33,7 +33,6 @@
         default = [ ];
       };
       keybinds = {
-        appleMagic = lib.mkEnableOption "Emulate PC keys on Apple Magic Keyboard";
         volumeStep = lib.mkOption {
           type = lib.types.int;
           description = "Amount to increase volume by when media keys are pressed in %";
@@ -144,7 +143,7 @@
             kb_variant =
               lib.mkIf (config.chimera.input.keyboard.variant != null)
                 config.chimera.input.keyboard.variant;
-            kb_options = lib.mkIf (config.chimera.hyprland.keybinds.appleMagic) "apple:alupckeys";
+            kb_options = lib.mkIf (config.chimera.input.keyboard.appleMagic) "apple:alupckeys";
             natural_scroll = config.chimera.input.mouse.scrolling.natural;
 
             numlock_by_default = true;
diff --git a/modules/home/wayland/niri/default.nix b/modules/home/wayland/niri/default.nix
index 6ef06a7..e601610 100644
--- a/modules/home/wayland/niri/default.nix
+++ b/modules/home/wayland/niri/default.nix
@@ -6,7 +6,9 @@
   lib,
   ...
 }:
-{
+let
+inherit (inputs) nixpkgs-stable;
+in {
 
   options.chimera.niri = {
     enable = lib.mkEnableOption "Use Niri as your window manager";
@@ -139,6 +141,7 @@
             xkb = {
               layout = config.chimera.input.keyboard.layout;
               variant = config.chimera.input.keyboard.variant;
+              options = lib.mkIf (config.chimera.input.keyboard.appleMagic) "apple:alupckeys";
             };
           };
 
@@ -157,35 +160,36 @@
           inherit (config.lib.niri) actions;
 
           generateWorkspaceBindings = workspaceNumber: {
-            "${mod}+${builtins.toString (lib.mod workspaceNumber 10)}".action = actions.focus-workspace workspaceNumber;
-            "${mod}+Shift+${builtins.toString (lib.mod workspaceNumber 10)}".action = actions.move-column-to-workspace workspaceNumber;
+            "${mod}+${builtins.toString (lib.mod workspaceNumber 10)}".action.focus-workspace = [workspaceNumber];
+            "${mod}+Shift+${builtins.toString (lib.mod workspaceNumber 10)}".action.move-column-to-workspace = [workspaceNumber];
           };
           joinAttrsetList = listOfAttrsets: lib.fold (a: b: a // b) {} listOfAttrsets;
         in { # General Keybinds
-          "${mod}+Q".action = actions.close-window;
-          "${mod}+Return".action = actions.spawn "${terminal}";
-          "${mod}+L".action = actions.spawn ["sh" "-c" "${config.programs.niri.package}/bin/niri msg action do-screen-transition && ${lock}"];
-          "${mod}+P".action = actions.power-off-monitors;
+          "${mod}+Q".action.close-window = [];
+          "${mod}+Shift+Q".action.quit = [];
+          "${mod}+Return".action.spawn = "${terminal}";
+          "${mod}+L".action.spawn = ["sh" "-c" "${config.programs.niri.package}/bin/niri msg action do-screen-transition && ${lock}"];
+          "${mod}+P".action.power-off-monitors = [];
 
-          "${mod}+R".action = actions.screenshot;
-          "${mod}+Ctrl+R".action = actions.screenshot-screen;
-          "${mod}+Shift+R".action = actions.screenshot-window;
-          "Print".action = actions.screenshot;
-          "Ctrl+Print".action = actions.screenshot-screen;
-          "Shift+Print".action = actions.screenshot-window;
+          "${mod}+R".action.screenshot = [];
+          "${mod}+Ctrl+R".action.screenshot-screen = [];
+          "${mod}+Shift+R".action.screenshot-window = [];
+          "Print".action.screenshot = [];
+          "Ctrl+Print".action.screenshot-screen = [];
+          "Shift+Print".action.screenshot-window = [];
 
-          "${mod}+Alt+R".action = actions.spawn "sh" "-c" ''([ -d Videos ] || mkdir Videos) && ${pkgs.wl-screenrec}/bin/wl-screenrec --geometry "$(${pkgs.slurp}/bin/slurp)" --filename "Videos/$(date +'%Y-%m-%d-%H-%M-%S').mp4"'';
-          "${mod}+Alt+Shift+R".action = actions.spawn "sh" "-c" "pkill wl-screenrec && cat \"$(${pkgs.coreutils}/bin/ls -t Videos/*.mp4 | ${pkgs.coreutils}/bin/head -n 1)\" | ${pkgs.wl-clipboard}/bin/wl-copy";
+          "${mod}+Alt+R".action.spawn = ["sh" "-c" ''([ -d Videos ] || mkdir Videos) && ${nixpkgs-stable.legacyPackages.${system}.wl-screenrec}/bin/wl-screenrec --geometry "$(${pkgs.slurp}/bin/slurp)" --filename "Videos/$(date +'%Y-%m-%d-%H-%M-%S').mp4"''];
+          "${mod}+Alt+Shift+R".action.spawn = ["sh" "-c" "pkill wl-screenrec && cat \"$(${pkgs.coreutils}/bin/ls -t Videos/*.mp4 | ${pkgs.coreutils}/bin/head -n 1)\" | ${pkgs.wl-clipboard}/bin/wl-copy"];
 
-          "${mod}+Space".action = actions."switch-layout" "next";
-          "${mod}+Shift+Space".action = actions."switch-layout" "prev";
+          "${mod}+Space".action.switch-layout = ["next"];
+          "${mod}+Shift+Space".action.switch-layout = ["prev"];
 
-          "${mod}+D" = lib.mkIf config.chimera.runner.enable { action = actions.spawn "${menu}"; };
+          "${mod}+D" = lib.mkIf config.chimera.runner.enable { action.spawn = "${menu}"; };
           "Alt+Space" = lib.mkIf (
               config.chimera.runner.enable
               && config.chimera.input.keybinds.alternativeSearch.enable
-            ) { action = actions.spawn "${menu}"; };
-          "${mod}+Shift+Slash".action = actions.show-hotkey-overlay;
+            ) { action.spawn = "${menu}"; };
+          "${mod}+Shift+Slash".action.show-hotkey-overlay = [];
         } // ( # Workspace Keybinds
           lib.pipe (lib.range 1 10) [
             (map generateWorkspaceBindings)
@@ -193,90 +197,90 @@
           ]
         ) // ( # Window Manipulation Bindings
         {
-          "${mod}+BracketLeft".action = actions."consume-or-expel-window-left";
-          "${mod}+BracketRight".action = actions."consume-or-expel-window-right";
-          "${mod}+Shift+BracketLeft".action = actions."consume-window-into-column";
-          "${mod}+Shift+BracketRight".action = actions."expel-window-from-column";
-          "${mod}+Slash".action = actions."switch-preset-column-width";
-          "${mod}+${mod1}+F".action = actions."fullscreen-window";
+          "${mod}+BracketLeft".action.consume-or-expel-window-left = [];
+          "${mod}+BracketRight".action.consume-or-expel-window-right = [];
+          "${mod}+Shift+BracketLeft".action.consume-window-into-column = [];
+          "${mod}+Shift+BracketRight".action.expel-window-from-column = [];
+          "${mod}+Slash".action.switch-preset-column-width = [];
+          "${mod}+${mod1}+F".action.fullscreen-window = [];
 
           # Focus
-          "${mod}+Up".action = actions."focus-window-or-workspace-up";
-          "${mod}+Down".action = actions."focus-window-or-workspace-down";
+          "${mod}+Up".action.focus-window-or-workspace-up = [];
+          "${mod}+Down".action.focus-window-or-workspace-down = [];
 
           # Non Jump Movement
-          "${mod}+Shift+Up".action = actions."move-window-up-or-to-workspace-up";
-          "${mod}+Shift+Down".action = actions."move-window-down-or-to-workspace-down";
-          "${mod}+Shift+Left".action = actions."consume-or-expel-window-left";
-          "${mod}+Shift+Right".action = actions."consume-or-expel-window-right";
+          "${mod}+Shift+Up".action.move-window-up-or-to-workspace-up = [];
+          "${mod}+Shift+Down".action.move-window-down-or-to-workspace-down = [];
+          "${mod}+Shift+Left".action.consume-or-expel-window-left = [];
+          "${mod}+Shift+Right".action.consume-or-expel-window-right = [];
 
           # To Monitor
-          "${mod}+Shift+Ctrl+Up".action = actions."move-window-to-monitor-up";
-          "${mod}+Shift+Ctrl+Down".action = actions."move-window-to-monitor-down";
-          "${mod}+Shift+Ctrl+Left".action = actions."move-window-to-monitor-left";
-          "${mod}+Shift+Ctrl+Right".action = actions."move-window-to-monitor-right";
+          "${mod}+Shift+Ctrl+Up".action.move-window-to-monitor-up = [];
+          "${mod}+Shift+Ctrl+Down".action.move-window-to-monitor-down = [];
+          "${mod}+Shift+Ctrl+Left".action.move-window-to-monitor-left = [];
+          "${mod}+Shift+Ctrl+Right".action.move-window-to-monitor-right = [];
 
           # To Workspace
-          "${mod}+Ctrl+Up".action = actions."move-window-to-workspace-up";
-          "${mod}+Ctrl+Down".action = actions."move-window-to-workspace-down";
+          "${mod}+Ctrl+Up".action.move-window-to-workspace-up = [];
+          "${mod}+Ctrl+Down".action.move-window-to-workspace-down = [];
 
           # Sizing
-          "${mod}+Equal".action = actions."set-window-height" "+5%";
-          "${mod}+Minus".action = actions."set-window-height" "-5%";
+          "${mod}+Equal".action.set-window-height = ["+5%"];
+          "${mod}+Minus".action.set-window-height = ["-5%"];
         }) // ( # Column Manipulation Bindings
         {
           # Focus
-          "${mod}+Left".action = actions."focus-column-left";
-          "${mod}+Right".action = actions."focus-column-right";
-          "${mod}+${mod1}+C".action = actions."center-column";
-          "${mod}+F".action = actions."maximize-column";
+          "${mod}+Left".action.focus-column-left = [];
+          "${mod}+Right".action.focus-column-right = [];
+          "${mod}+${mod1}+C".action.center-column = [];
+          "${mod}+F".action.maximize-column = [];
 
           # Non Monitor Movement
-          "${mod}+${mod1}+Shift+Up".action = actions."move-column-to-workspace-up";
-          "${mod}+${mod1}+Shift+Down".action = actions."move-column-to-workspace-down";
-          "${mod}+${mod1}+Shift+Left".action = actions."move-column-left";
-          "${mod}+${mod1}+Shift+Right".action = actions."move-column-right";
+          "${mod}+${mod1}+Shift+Up".action.move-column-to-workspace-up = [];
+          "${mod}+${mod1}+Shift+Down".action.move-column-to-workspace-down = [];
+          "${mod}+${mod1}+Shift+Left".action.move-column-left = [];
+          "${mod}+${mod1}+Shift+Right".action.move-column-right = [];
 
           # To Monitor
-          "${mod}+${mod1}+Shift+Ctrl+Up".action = actions."move-column-to-monitor-up";
-          "${mod}+${mod1}+Shift+Ctrl+Down".action = actions."move-column-to-monitor-down";
-          "${mod}+${mod1}+Shift+Ctrl+Left".action = actions."move-column-to-monitor-left";
-          "${mod}+${mod1}+Shift+Ctrl+Right".action = actions."move-column-to-monitor-right";
+          "${mod}+${mod1}+Shift+Ctrl+Up".action.move-column-to-monitor-up = [];
+          "${mod}+${mod1}+Shift+Ctrl+Down".action.move-column-to-monitor-down = [];
+          "${mod}+${mod1}+Shift+Ctrl+Left".action.move-column-to-monitor-left = [];
+          "${mod}+${mod1}+Shift+Ctrl+Right".action.move-column-to-monitor-right = [];
 
           # Sizing
-          "${mod}+${mod1}+Equal".action = actions."set-column-width" "+5%";
-          "${mod}+${mod1}+Minus".action = actions."set-column-width" "-5%";
+          "${mod}+${mod1}+Equal".action.set-column-width = ["+5%"];
+          "${mod}+${mod1}+Minus".action.set-column-width = ["-5%"];
         }) // ( # Workspace Manipulation Bindings
         {
           # Focus
-          "${mod}+Page_Up".action = actions."focus-workspace-up";
-          "${mod}+Page_Down".action = actions."focus-workspace-down";
+          "${mod}+Page_Up".action.focus-workspace-up = [];
+          "${mod}+Page_Down".action.focus-workspace-down = [];
 
           # Within Itself
-          "${mod}+Shift+Page_Up".action = actions."move-workspace-up";
-          "${mod}+Shift+Page_Down".action = actions."move-workspace-down";
+          "${mod}+Shift+Page_Up".action.move-workspace-up = [];
+          "${mod}+Shift+Page_Down".action.move-workspace-down = [];
 
           # To Monitor
-          "${mod}+Shift+Ctrl+Page_Up".action = actions."move-workspace-to-monitor-up";
-          "${mod}+Shift+Ctrl+Page_Down".action = actions."move-workspace-to-monitor-down";
-          "${mod}+Shift+Ctrl+Home".action = actions."move-workspace-to-monitor-left";
-          "${mod}+Shift+Ctrl+End".action = actions."move-workspace-to-monitor-right";
+          "${mod}+Shift+Ctrl+Page_Up".action.move-workspace-to-monitor-up = [];
+          "${mod}+Shift+Ctrl+Page_Down".action.move-workspace-to-monitor-down = [];
+          "${mod}+Shift+Ctrl+Home".action.move-workspace-to-monitor-left = [];
+          "${mod}+Shift+Ctrl+End".action.move-workspace-to-monitor-right = [];
         }) // { # Audio
           "XF86AudioRaiseVolume" = {
             allow-when-locked = true;
-            action = actions.spawn "${pkgs.wireplumber}/bin/wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.05+";
+            action.spawn = ["${pkgs.wireplumber}/bin/wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.05+"];
           };
           "XF86AudioLowerVolume" = {
             allow-when-locked = true;
-            action = actions.spawn "${pkgs.wireplumber}/bin/wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.05-";
+            action.spawn = ["${pkgs.wireplumber}/bin/wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.05-"];
           };
           "XF86AudioMute" = {
             allow-when-locked = true;
-            action = actions.spawn "${pkgs.wireplumber}/bin/wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle";
+            action.spawn = ["${pkgs.wireplumber}/bin/wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"];
           };
           "XF86AudioMicMute" = {
             allow-when-locked = true;
-            action = actions.spawn "${pkgs.wireplumber}/bin/wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle";
+            action.spawn = ["${pkgs.wireplumber}/bin/wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"];
           };
         };
 
@@ -305,10 +309,9 @@
         hotkey-overlay.skip-at-startup = true;
         screenshot-path = null;
 
-        spawn-at-startup = [
-          {
+        spawn-at-startup = if config.chimera.waybar.enable then [{
             command = [ "${pkgs.waybar}/bin/waybar" ];
-          }
+          }] else [] ++ [
           {
             command = [ "${pkgs.swaybg}/bin/swaybg" "-i" "${config.chimera.theme.wallpaper}" "-m" "fill" ];
           }