nichts/nyx/modules/options/theme/gtk.nix

71 lines
1.9 KiB
Nix
Raw Normal View History

2024-04-09 23:11:33 +02:00
{
lib,
pkgs,
...
}: let
inherit (lib) mkOption mkEnableOption types;
in {
options = {
modules = {
style = {
# gtk specific options
gtk = {
enable = mkEnableOption "GTK theming optionss";
usePortal = mkEnableOption "native desktop portal use for filepickers";
theme = {
name = mkOption {
type = types.str;
default = "Catppuccin-Mocha-Standard-Blue-dark";
description = "The name for the GTK theme package";
};
package = mkOption {
type = types.package;
description = "The theme package to be used for GTK programs";
default = pkgs.catppuccin-gtk.override {
size = "standard";
accents = ["blue"];
variant = "mocha";
tweaks = ["normal"];
};
};
};
iconTheme = {
name = mkOption {
type = types.str;
description = "The name for the icon theme that will be used for GTK programs";
default = "Papirus-Dark";
};
package = mkOption {
type = types.package;
description = "The GTK icon theme to be used";
default = pkgs.catppuccin-papirus-folders.override {
accent = "blue";
flavor = "mocha";
};
};
};
font = {
name = mkOption {
type = types.str;
description = "The name of the font that will be used for GTK applications";
default = "Lexend";
};
size = mkOption {
type = types.int;
description = "The size of the font";
default = 14;
};
};
};
};
};
};
}