Move natural scrolling to options

A story as old as time: I use natural scrolling, coded does not. Adding
an option allows us to both have our way

Change-Id: I0dd3b0aabffc9aa5d7a2e241787cfb5e1d153514
Reviewed-on: https://git.clicks.codes/c/Chimera/NixFiles/+/387
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: Skyler Grey <minion@clicks.codes>
diff --git a/homes/x86_64-linux/minion@greylag/default.nix b/homes/x86_64-linux/minion@greylag/default.nix
index de0ba65..1946998 100644
--- a/homes/x86_64-linux/minion@greylag/default.nix
+++ b/homes/x86_64-linux/minion@greylag/default.nix
@@ -83,5 +83,7 @@
       layout = "us";
       variant = "dvorak";
     };
+
+    input.mouse.scrolling.natural = true;
   };
 }
diff --git a/modules/home/hyprland/default.nix b/modules/home/hyprland/default.nix
index 9555151..b1263d8 100644
--- a/modules/home/hyprland/default.nix
+++ b/modules/home/hyprland/default.nix
@@ -11,6 +11,12 @@
 in
 {
   options.chimera = {
+    input.mouse.scrolling.natural = lib.mkEnableOption "Enable natural scrolling";
+    input.touchpad.scrolling.natural = lib.mkOption {
+      type = lib.types.bool;
+      description = "Enable natural scrolling";
+      default = config.chimera.input.mouse.scrolling.natural;
+    };
     input.keyboard = {
       layout = lib.mkOption {
         type = lib.types.str;
@@ -85,10 +91,12 @@
           input = {
             kb_layout = config.chimera.input.keyboard.layout;
             kb_variant = lib.mkIf (config.chimera.input.keyboard.variant != null) config.chimera.input.keyboard.variant;
-            natural_scroll = true;
+            natural_scroll = config.chimera.input.mouse.scrolling.natural;
+
+            numlock_by_default = true;
 
             touchpad = {
-              natural_scroll = true;
+              natural_scroll = config.chimera.input.touchpad.scrolling.natural;
             };
           };