{ pkgs, lib, config, inputs, ... }: let schemesFile = import ./schemes.nix { inherit pkgs inputs; }; scheme = schemesFile.schemes.febroary; cfg = config.my.stylix; gnomeEnabled = config.services.xserver.desktopManager.gnome.enable; in { options.my.stylix.enable = lib.mkEnableOption "system-wide theming with Stylix"; config = { stylix = { inherit (scheme) image polarity; enable = true; autoEnable = cfg.enable; targets.qt.platform = lib.mkForce "qtct"; } // lib.optionalAttrs (scheme ? base16Scheme) { inherit (scheme) base16Scheme; }; home-manager.users.jawz = { gtk = lib.mkIf (!cfg.enable && gnomeEnabled) { enable = true; iconTheme = { name = "Papirus-Light"; package = pkgs.papirus-icon-theme.override { color = "yellow"; }; }; }; stylix = { inherit (cfg) enable; autoEnable = cfg.enable; iconTheme = { inherit (cfg) enable; package = scheme.iconPackage; light = "Papirus-Light"; dark = "Papirus-Dark"; }; targets.librewolf = { firefoxGnomeTheme.enable = true; profileNames = [ "jawz" ]; }; }; }; }; }