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