{ config, inputs, pkgs, lib, ... }: let cfg = config.modules.usrEnv.style.stylix; inherit (config.modules.usrEnv.style.stylix) image cursor fontsizes; inherit (config.modules.other.system) username; inherit (lib) mkIf; in { imports = [inputs.stylix.nixosModules.stylix]; config = mkIf cfg.enable { stylix = { enable = true; autoEnable = false; homeManagerIntegration = { followSystem = true; autoImport = true; }; # base16Scheme = scheme; base16Scheme = { scheme = "3024-custom"; # base00 = "090300"; # ---- base00 = "000000"; # Black base01 = "3a3432"; # Dark grey base02 = "4a4543"; # Lighter grey base03 = "5c5855"; # Light greLight grey base04 = "807d7c"; # + base05 = "a5a2a2"; # ++ base06 = "d6d5d4"; # +++ base07 = "f7f7f7"; # ++++ base08 = "db2d20"; # red base09 = "e8bbd0"; # orange base0A = "fded02"; # yellow base0B = "01a252"; # green base0C = "b5e4f4"; # aqua base0D = "01a0e4"; # blue base0E = "a16a94"; # purple base0F = "cdab53"; # brown }; inherit image; polarity = "dark"; cursor = { inherit (cursor) size package name; # package = pkgs.bibata-cursors; # name = "Bibata-Modern-Classic"; }; fonts = { sizes = { inherit (fontsizes) terminal popups applications; }; monospace = { package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono" "ComicShannsMono"];}; # name = "JetBrainsMono"; name = "ComicShannsMono Nerd Font"; }; serif = config.stylix.fonts.monospace; sansSerif = config.stylix.fonts.monospace; emoji = { package = pkgs.noto-fonts-color-emoji; name = "Noto Color Emoji"; }; }; opacity = { applications = 1.0; popups = 1.0; desktop = 1.0; terminal = 1.0; }; targets = { console.enable = true; fish.enable = true; grub.enable = false; grub.useImage = true; gtk.enable = true; lightdm.enable = true; nixos-icons.enable = true; plymouth.enable = true; plymouth.logoAnimated = true; }; }; home-manager.users.${username} = { stylix.targets = { btop.enable = true; helix.enable = true; dunst.enable = true; firefox.enable = true; foot.enable = true; fzf.enable = true; hyprland.enable = true; lazygit.enable = true; emacs.enable = true; kde.enable = true; yazi.enable = true; zellij.enable = true; }; }; }; }