Files
dotfiles/home/modules/dms.nix
T

72 lines
2.0 KiB
Nix

{ config, lib, ... }:
let
c = config.theme.colors;
dmsTheme = {
id = "gruvbox";
name = "Gruvbox";
version = "1.0.0";
author = "ayman";
description = "Gruvbox Dark Medium from theme.nix";
dark = {
primary = c.green_b;
primaryContainer = c.green;
secondary = c.yellow;
surfaceText = c.fg;
surfaceVariantText = c.fg2;
backgroundText = c.fg;
outline = c.gray;
error = c.red_b;
warning = c.orange_b;
info = c.blue_b;
};
light = {
primary = c.green;
primaryContainer = c.green_b;
secondary = c.yellow_b;
surfaceText = c.bg;
surfaceVariantText = c.bg1;
backgroundText = c.bg;
outline = c.bg4;
error = c.red;
warning = c.orange;
info = c.blue;
};
variants = {
default = "medium";
options = [
{
id = "medium";
name = "Medium";
dark = {
primaryText = c.bg0_h;
surface = c.bg0_h;
surfaceVariant = c.bg;
surfaceTint = c.bg1;
background = c.bg;
surfaceContainer = c.bg0_s;
surfaceContainerHigh = c.bg1;
surfaceContainerHighest = c.bg2;
};
light = {
primaryText = c.fg;
surface = c.fg;
surfaceVariant = c.fg1;
surfaceTint = c.fg2;
background = c.fg1;
surfaceContainer = c.fg2;
surfaceContainerHigh = c.fg3;
surfaceContainerHighest = c.fg4;
};
}
];
};
};
in
{
home.file.".config/DankMaterialShell/themes/gruvbox/theme.json" = {
text = builtins.toJSON dmsTheme;
force = true;
};
}