diff options
Diffstat (limited to 'home-manager/modules/aesthetics/targets/vesktop.nix')
| -rw-r--r-- | home-manager/modules/aesthetics/targets/vesktop.nix | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/home-manager/modules/aesthetics/targets/vesktop.nix b/home-manager/modules/aesthetics/targets/vesktop.nix new file mode 100644 index 0000000..968df1a --- /dev/null +++ b/home-manager/modules/aesthetics/targets/vesktop.nix @@ -0,0 +1,65 @@ +{ config, lib, ... }: let + cfg = config.aesthetics.targets.vesktop; + aes = config.aesthetics; +in { + options.aesthetics.targets.vesktop.enable = lib.mkOption { + type = lib.types.bool; + default = (aes.enableAllTargets && aes.hasGui); + description = "Whether to enable the aesthetics vesktop target."; + }; + config = lib.mkIf cfg.enable { + xdg.configFile."vesktop/themes/stylix.theme.css".text = with aes.scheme; '' + :root { + --base00: #${base00}; /* Black */ + --base01: #${base01}; /* Bright Black */ + --base02: #${base02}; /* Grey */ + --base03: #${base03}; /* Brighter Grey */ + --base04: #${base04}; /* Bright Grey */ + --base05: #${base05}; /* White */ + --base06: #${base06}; /* Brighter White */ + --base07: #${base07}; /* Bright White */ + --base08: #${base08}; /* Red */ + --base09: #${base09}; /* Orange */ + --base0A: #${base0A}; /* Yellow */ + --base0B: #${base0B}; /* Green */ + --base0C: #${base0C}; /* Cyan */ + --base0D: #${base0D}; /* Blue */ + --base0E: #${base0E}; /* Purple */ + --base0F: #${base0F}; /* Magenta */ + + --primary-630: var(--base00); /* Autocomplete background */ + --primary-660: var(--base00); /* Search input background */ + } + + .theme-light, .theme-dark { + --search-popout-option-fade: none; /* Disable fade for search popout */ + --bg-overlay-2: var(--base00); /* These 2 are needed for proper threads coloring */ + --home-background: var(--base00); + --bg-overlay-chat : var(--base00); /* Recolor forum channels */ + --background-primary: var(--base00); + --background-secondary: var(--base01); + --background-secondary-alt: var(--base01); + --channeltextarea-background: var(--base01); + --background-tertiary: var(--base00); + --background-accent: var(--base0E); + --background-floating: var(--base01); + --background-modifier-hover: #{{base00-hex}}4c; /* 30% of base00 */ + --background-modifier-selected: var(--base00); + --text-normal: var(--base05); + --text-secondary: var(--base03); + --text-muted: var(--base04); + --text-link: var(--base0C); + --interactive-normal: var(--base05); + --interactive-hover: var(--base05); + --interactive-active: var(--base07); + --interactive-muted: var(--base03); + --channels-default: var(--base04); + --channel-icon: var(--base04); + --header-primary: var(--base06); + --header-secondary: var(--base04); + --scrollbar-thin-track: transparent; + --scrollbar-auto-track: transparent; + } + ''; + }; +} |
