nichts/modules/style/theming.nix

48 lines
1.1 KiB
Nix
Raw Normal View History

2025-03-14 09:44:14 +01:00
{
config,
lib,
pkgs,
...
}: let
inherit (lib.modules) mkMerge mkIf;
inherit (lib.options) mkEnableOption;
2025-03-31 11:05:42 +02:00
cfg = config.modules.theming;
2025-03-14 09:44:14 +01:00
in {
2025-03-31 11:05:42 +02:00
options.modules.theming = {
2025-03-14 09:44:14 +01:00
gtk.enable = mkEnableOption "gtk theming";
qt.enable = mkEnableOption "qt theming";
};
config = mkMerge [
(mkIf cfg.gtk.enable {
environment = {
systemPackages = builtins.attrValues {
inherit (pkgs) rose-pine-cursor;
};
etc = {
"xdg/gtk-4.0/settings.ini".text = ''
[Settings]
gtk-application-prefer-dark-theme=true
gtk-cursor-theme-name=BreezeX-RosePine-Linux
'';
"xdg/gtk-3.0/settings.ini".text = ''
[Settings]
gtk-application-prefer-dark-theme=true
gtk-cursor-theme-name=BreezeX-RosePine-Linux
'';
"xdg/gtk-2.0/gtkrc".text = ''
gtk-cursor-theme-name = "BreezeX-RosePine-Linux"
gtk-cursor-theme-size = 30
'';
"xdg/Xresources".text = ''
Xcursor.size: 30
Xcursor.theme: BreezeX-RosePine-Linux
'';
};
};
})
];
}