1
Fork 0
mirror of https://github.com/RGBCube/ncc synced 2026-01-14 09:11:00 +00:00
ncc/modules/theme.mod.nix
2025-10-16 22:43:02 +03:00

40 lines
No EOL
954 B
Nix

let
commonModule =
{ lib, pkgs, themes, ... }:
let
inherit (lib.modules) mkOption mkDefault;
inherit (lib.types) attrs;
in
{
options.theme = mkOption {
type = attrs;
description = "Theme configuration for the system";
default = { };
};
config.theme = mkDefault (themes.custom (themes.raw.gruvbox-dark-hard // {
cornerRadius = 4;
borderWidth = 2;
margin = 0;
padding = 8;
font.size.normal = 16;
font.size.big = 20;
font.sans.name = "Lexend";
font.sans.package = pkgs.lexend;
font.mono.name = "JetBrainsMono Nerd Font";
font.mono.package = pkgs.nerd-fonts.jetbrains-mono;
icons.name = "Gruvbox-Plus-Dark";
icons.package = pkgs.gruvbox-plus-icons;
}));
};
in
{
nixosModules.theme = commonModule;
darwinModules.theme = commonModule;
homeModules.theme = commonModule;
}