2024-01-02 11:36:10 +00:00
|
|
|
{ self, lib, config, pkgs, ... }: {
|
2023-06-26 03:29:03 +00:00
|
|
|
environment.systemPackages = with pkgs; [
|
2024-03-05 09:16:37 +00:00
|
|
|
qt6.qtwayland
|
|
|
|
kdePackages.breeze
|
|
|
|
kdePackages.breeze-icons
|
|
|
|
qt6.qtsvg # needed to load breeze icons
|
2023-06-26 03:29:03 +00:00
|
|
|
|
2024-03-05 09:16:37 +00:00
|
|
|
kdePackages.qqc2-desktop-style
|
|
|
|
];
|
2024-01-02 11:36:10 +00:00
|
|
|
|
2024-03-05 09:16:37 +00:00
|
|
|
qt = {
|
|
|
|
enable = true;
|
|
|
|
platformTheme = "qt5ct";
|
2023-06-26 03:29:03 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
home-manager.users.${config.main-user} = {
|
2023-06-26 04:36:28 +00:00
|
|
|
home.file.".icons/default/index.theme".text = ''
|
|
|
|
[Icon Theme]
|
|
|
|
Inherits=breeze_cursors
|
|
|
|
'';
|
2023-06-26 03:29:03 +00:00
|
|
|
|
2024-03-05 09:16:37 +00:00
|
|
|
xdg.configFile = let
|
|
|
|
qtctConf = colors: ''
|
2023-06-26 07:01:43 +00:00
|
|
|
[Appearance]
|
|
|
|
style=Breeze
|
|
|
|
icon_theme=breeze-dark
|
2024-02-17 05:59:30 +00:00
|
|
|
standard_dialogs=xdgdesktopportal
|
2023-06-26 07:01:43 +00:00
|
|
|
|
|
|
|
# Cantata misbehaves without color overrides. This overrides the breeze colors with the
|
|
|
|
# exact same colors.
|
2024-03-05 09:16:37 +00:00
|
|
|
color_scheme_path=${colors}
|
2023-06-26 07:01:43 +00:00
|
|
|
custom_palette=true
|
2024-02-17 05:59:30 +00:00
|
|
|
|
|
|
|
[Interface]
|
|
|
|
buttonbox_layout=0
|
|
|
|
cursor_flash_time=1000
|
|
|
|
dialog_buttons_have_icons=2
|
|
|
|
double_click_interval=400
|
|
|
|
gui_effects=General, AnimateMenu, AnimateCombo
|
|
|
|
keyboard_scheme=2
|
|
|
|
menus_have_icons=true
|
|
|
|
show_shortcuts_in_context_menus=true
|
|
|
|
toolbutton_style=4
|
|
|
|
underline_shortcut=1
|
|
|
|
wheel_scroll_lines=3
|
2023-06-26 07:01:43 +00:00
|
|
|
'';
|
2024-03-05 09:16:37 +00:00
|
|
|
in {
|
|
|
|
# fixes dolphin background colors
|
|
|
|
"kdeglobals".source = "${pkgs.kdePackages.breeze}/share/color-schemes/BreezeDark.colors";
|
|
|
|
|
|
|
|
"qt5ct/qt5ct.conf".text = qtctConf ./colors-qt5ct.conf;
|
|
|
|
"qt6ct/qt6ct.conf".text = qtctConf ./colors-qt6ct.conf;
|
2023-06-26 03:29:03 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
gtk = {
|
|
|
|
enable = true;
|
|
|
|
theme = {
|
2024-03-05 09:16:37 +00:00
|
|
|
package = pkgs.kdePackages.breeze-gtk;
|
2023-06-26 03:29:03 +00:00
|
|
|
name = "Breeze-Dark";
|
|
|
|
};
|
|
|
|
iconTheme = {
|
2024-03-05 09:16:37 +00:00
|
|
|
package = pkgs.kdePackages.breeze-icons;
|
2023-06-26 03:29:03 +00:00
|
|
|
name = "breeze-dark";
|
|
|
|
};
|
|
|
|
cursorTheme = {
|
2024-03-05 09:16:37 +00:00
|
|
|
package = pkgs.kdePackages.breeze-gtk;
|
2023-06-26 03:29:03 +00:00
|
|
|
name = "breeze_cursors";
|
|
|
|
};
|
2024-03-05 09:16:37 +00:00
|
|
|
|
|
|
|
gtk3.extraConfig.gtk-xft-rgba = "rgb";
|
|
|
|
gtk4.extraConfig.gtk-xft-rgba = "rgb";
|
2023-06-26 03:29:03 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|