{flakeRoot, ... }: { flake.nixosModules.stylix = { inputs, config, lib, pkgs, ... }: let cfg = config.mySystem.desktop.stylix; in { environment.systemPackages = with pkgs; [ feh # wallpaper target st # NVF / terminal target, or kitty ]; options.mySystem.desktop.stylix.enable = lib.mkEnableOption "Stylix System Theming"; config = lib.mkIf cfg.enable { stylix = { enable = true; base16Scheme = "${flakeRoot}/assets/system/theming/stylix/catppuccin-mocha.yaml"; image = "${flakeRoot}/assets/hyprland/wallpaperstuff/pictures/wall1.jpg"; polarity = "dark"; cursor = { package = pkgs.phinger-cursors; name = "phinger-cursors-light"; size = 24; }; fonts = { monospace = { package = pkgs.nerd-fonts.fira-code; name = "Fira Code Nerd Font"; }; sansSerif = { package = pkgs.lato; name = "Lato"; }; }; icons = { enable = true; package = pkgs.papirus-icon-theme; dark = "Papirus-Dark"; light = "Papirus-Light"; }; }; home-manager.users.henrov.home.sessionVariables = { XCURSOR_THEME = config.stylix.cursor.name; XCURSOR_SIZE = toString config.stylix.cursor.size; HYPRCURSOR_THEME = config.stylix.cursor.name; HYPRCURSOR_SIZE = toString config.stylix.cursor.size; }; }; }; }