{ config, pkgs, lib, inputs, ... }: let inherit (config.my) theme font desktop; inherit (theme) color gtk_theme icon_theme cursor_theme ; in lib.mkIf (desktop == "sway") { home.pointerCursor = { name = cursor_theme; size = 24; package = pkgs.bibata-cursors; gtk.enable = true; }; gtk = { enable = true; font = { name = font.interface; size = font.size.small; }; theme = { name = gtk_theme; package = pkgs.orchis_theme_compact; }; iconTheme = { name = icon_theme; package = pkgs.papirus_red; }; } // ( let shared.extraConfig = { gtk-decoration-layout = "menu:"; }; in { gtk4 = shared; gtk3 = shared; } ); xdg.configFile."gtk-3.0/settings.ini".force = true; xdg.configFile."gtk-4.0/settings.ini".force = true; qt = { enable = true; platformTheme.name = "gtk3"; style.name = "qt5ct"; }; dconf.settings = { "org/gnome/desktop/interface" = { gtk-theme = gtk_theme; icon-theme = icon_theme; cursor-theme = cursor_theme; color-scheme = "prefer-${color.type}"; }; "org/gnome/desktop/wm/preferences" = { button-layout = "menu:"; }; }; # fonts.fontconfig.enable = true; xdg.configFile = { "qt5ct/qt5ct.conf".text = '' [Appearance] # color_scheme_path=/nix/store/f07mk0vrm47jxw3y5v99hxncy0w4vcyq-qt5ct-1.5/share/qt5ct/colors/darker.conf custom_palette=false icon_theme=${icon_theme} standard_dialogs=default style=kvantum-dark # [Fonts] # fixed=@Variant(\0\0\0@\0\0\0\x1c\0H\0\x61\0\x63\0k\0 \0N\0\x65\0r\0\x64\0 \0\x46\0o\0n\0t@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) # general=@Variant(\0\0\0@\0\0\0\x1e\0L\0i\0\x62\0\x65\0r\0\x61\0t\0i\0o\0n\0 \0S\0\x61\0n\0s@(\0\0\0\0\0\0\xff\xff\xff\xff\x5\x1\0\x32\x10) ''; "kdedefaults/kdeglobals".text = '' [General] ColorScheme=BreezeDark [Icons] Theme=${icon_theme} ''; }; services.xsettingsd = { enable = true; settings = { "Gtk/FontName" = "${font.interface} ${toString font.size.small}"; "Net/ThemeName" = "${gtk_theme}"; "Net/IconThemeName" = "${icon_theme}"; "Gtk/CursorThemeName" = "${cursor_theme}"; "Gtk/CursorThemeSize" = 24; "Net/SoundThemeName" = "freedesktop"; }; }; home.packages = with pkgs; [ libsForQt5.qt5ct libsForQt5.qtstyleplugin-kvantum qt6Packages.qt6ct qt6Packages.qtstyleplugin-kvantum pkgs.bibata-cursors pkgs.orchis_theme_compact pkgs.papirus_red ## fonts liberation_ttf hack-font font-awesome_5 fira-code nerdfonts_fira_hack material-wifi-icons ]; }