{ lib, pkgs, config, ...}: let inherit (lib) mkIf mkEnableOption mkOption; cfg = config.chuj.stuff.theme; user = config.chuj.system.user; in { options.chuj.stuff.theme = { enable = mkEnableOption "theme"; }; config = mkIf cfg.enable { fonts = { enableDefaultPackages = true; packages = with pkgs; [ jetbrains-mono monaspace ]; fontconfig.defaultFonts = let font = "Monaspace Xenon"; in { serif = [ font ]; sansSerif = [ font ]; monospace = [ font ]; }; }; home-manager.users.${user} = { home.pointerCursor = { gtk.enable = true; x11.enable = true; name = "aero-drop"; package = pkgs.win7-cursors; }; gtk = { enable = true; theme = { name = "Adwaita-dark"; package = pkgs.gnome-themes-extra; }; iconTheme = { name = "Vimix-Black"; package = pkgs.vimix-icon-theme; }; gtk2.configLocation = "${config.home-manager.users.${user}.xdg.configHome}/gtk-2.0/gtkrc"; }; qt = { enable = true; platformTheme.name = "adwaita"; style = { name = "adwaita-dark"; package = pkgs.adwaita-qt; }; }; dconf.settings."org/gnome/desktop/interface".color-scheme = "prefer-dark"; home.sessionVariables = { GTK_USE_PORTAL = "1"; }; }; }; }