52 lines
1.1 KiB
Nix
52 lines
1.1 KiB
Nix
|
{ pkgs, lib, ... }:
|
||
|
let
|
||
|
ini = pkgs.formats.ini { };
|
||
|
common-gtk = {
|
||
|
gtk-application-prefer-dark-theme = true;
|
||
|
};
|
||
|
qtct-config =
|
||
|
pkg: name:
|
||
|
ini.generate "${name}.conf" {
|
||
|
Appearance = {
|
||
|
custom_palette = true;
|
||
|
color_scheme_path = "${pkg}/share/${name}/colors/darker.conf";
|
||
|
|
||
|
style = "Breeze";
|
||
|
icon_theme = "breeze-dark";
|
||
|
|
||
|
standard_dialogs = "default";
|
||
|
};
|
||
|
};
|
||
|
in
|
||
|
{
|
||
|
home.sessionVariables.GTK_THEME = "Adwaita:dark";
|
||
|
gtk = {
|
||
|
enable = true;
|
||
|
gtk3.extraConfig = common-gtk;
|
||
|
gtk4.extraConfig = common-gtk;
|
||
|
};
|
||
|
|
||
|
dconf.settings = {
|
||
|
"org/gnome/desktop/interface" = {
|
||
|
color-scheme = "prefer-dark";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
qt = {
|
||
|
enable = true;
|
||
|
platformTheme.name = "qtct";
|
||
|
};
|
||
|
|
||
|
home.packages = with pkgs; [
|
||
|
(lib.lowPrio libsForQt5.breeze-qt5.bin)
|
||
|
kdePackages.breeze
|
||
|
kdePackages.breeze-icons
|
||
|
qt6.qtwayland
|
||
|
];
|
||
|
|
||
|
xdg.configFile = {
|
||
|
"qt5ct/qt5ct.conf".source = qtct-config pkgs.libsForQt5.qt5ct "qt5ct";
|
||
|
"qt6ct/qt6ct.conf".source = qtct-config pkgs.kdePackages.qt6ct "qt6ct";
|
||
|
};
|
||
|
}
|