Merge with Coded's config

As we're working on similar things, it makes sense to make a single
config with all our stuff together. We've named our coalition "chimera"
as Coded's devices are named after cat breeds and mine are named after
bird species. We'll be using NixOS options to enable us to have
different configurations anywhere we want that

Co-Authored-By: Samuel Shuert <coded@clicks.codes>
Change-Id: Idb102526d84e76edb0bfe7153bd18dfe8566516b
Reviewed-on: https://git.clicks.codes/c/Chimera/NixFiles/+/382
Reviewed-by: Samuel Shuert <coded@clicks.codes>
Tested-by: Skyler Grey <minion@clicks.codes>
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
+    ''
+  );
 }