2025-02-05 17:25:29 -05:00

56 lines
1023 B
Nix

{
config,
pkgs,
lib,
...
}:
let
cfg = config.nmasur.presets.gtk;
in
{
options.nmasur.presets.gtk = {
enable = lib.mkEnableOption "Gnome GTK settings";
theme = {
name = lib.mkOption {
type = lib.types.str;
default = "Adwaita-dark";
};
package = lib.mkPackageOption pkgs "gnome-themes-extra" { };
};
};
config = lib.mkIf cfg.enable {
# Cursor
home.pointerCursor = {
name = "Adwaita";
package = pkgs.adwaita-icon-theme;
size = 24;
gtk.enable = true;
x11.enable = true;
};
# Enable num lock on login
xsession.numlock.enable = true;
# Dark theme
gtk = {
enable = true;
theme = {
name = cfg.theme.name;
package = cfg.theme.package;
};
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = config.theme.mode == "dark";
};
gtk4.extraConfig = {
gtk-application-prefer-dark-theme = config.theme.mode == "dark";
};
};
};
}