nixos-config/home/theme.nix
2026-07-28 16:56:47 +02:00

110 lines
2.4 KiB
Nix

# Theme for graphical apps
{ lib, super-config, pkgs, ... }:
{
home.packages = with pkgs; [
(catppuccin-kvantum.override {
accent = "blue";
variant = "mocha";
})
papirus-folders
];
# Cursor setup
home.pointerCursor = {
# name = "Catppuccin-Mocha-Lavender-Cursors";
# package = pkgs.catppuccin-cursors.mochaLavender;
name = "WhiteSur-cursors";
package = pkgs.whitesur-cursors;
gtk.enable = true;
x11.enable = true;
x11.defaultCursor = "WhiteSur-cursors";
size = 24;
};
# GTK Setup
gtk = {
enable = true;
# theme = {
# name = "catppuccin-mocha-standard-blue-dark";
# package = pkgs.catppuccin-gtk.override {
# accents = [ "blue" ];
# size = "standard";
# variant = "mocha";
# };
# };
theme = {
name = "Adwaita-dark";
package = pkgs.gnome-themes-extra;
};
iconTheme = {
name = "Papirus-Dark";
package = pkgs.catppuccin-papirus-folders.override {
flavor = "mocha";
accent = "blue";
};
};
# cursorTheme = {
# name = "catppuccin-mocha-lavender-cursors";
# package = pkgs.catppuccin-cursors.mochaLavender;
# };
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = lib.mkIf (super-config.darkMode == true) 1;
};
gtk4.extraConfig = {
gtk-application-prefer-dark-theme = lib.mkIf (super-config.darkMode == true) 1;
};
};
dconf.settings = {
"org/gtk/settings/file-chooser" = {
sort-directories-first = true;
};
# GTK4 Setup
"org/gnome/desktop/interface" = {
# gtk-theme = "catppuccin-mocha-standard-blue-dark";
color-scheme = lib.mkIf (super-config.darkMode == true) "prefer-dark";
};
};
xdg.configFile = {
kvantum = {
target = "Kvantum/kvantum.kvconfig";
text = lib.generators.toINI { } {
General.theme = "catppuccin-mocha-blue";
};
};
qt5ct = {
target = "qt5ct/qt5ct.conf";
text = lib.generators.toINI { } {
Appearance = {
icon_theme = "Papirus-Dark";
};
};
};
qt6ct = {
target = "qt6ct/qt6ct.conf";
text = lib.generators.toINI { } {
Appearance = {
icon_theme = "Papirus-Dark";
};
};
};
};
qt = {
enable = true;
platformTheme.name = "gtk";
style.name = "adwaita-dark";
};
systemd.user.sessionVariables = {
QT_STYLE_OVERRIDE = "adwaita-dark";
};
}