71 lines
1.9 KiB
Nix
71 lines
1.9 KiB
Nix
|
{
|
||
|
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;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|