style/theming.nix: init

This commit is contained in:
Charlie Root 2025-03-14 09:44:14 +01:00
commit 68f4bae67b
Signed by: faukah
SSH key fingerprint: SHA256:Uj2AXqvtdCA4hn5Hq0ZonhIAyUqI1q4w2sMG3Z1TH7E

47
modules/style/theming.nix Normal file
View file

@ -0,0 +1,47 @@
{
config,
lib,
pkgs,
...
}: let
inherit (lib.modules) mkMerge mkIf;
inherit (lib.options) mkEnableOption;
cfg = config.modules.usrEnv.theming;
in {
options.modules.usrEnv.theming = {
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
'';
};
};
})
];
}