48 lines
1.4 KiB
Nix
48 lines
1.4 KiB
Nix
|
{ lib, ... }:
|
||
|
let
|
||
|
mkColorOption = with lib; description: default: mkOption {
|
||
|
inherit description default;
|
||
|
example = "#abcdef";
|
||
|
type = types.strMatching "#[0-9a-f]{6}";
|
||
|
};
|
||
|
in
|
||
|
{
|
||
|
imports = [
|
||
|
];
|
||
|
|
||
|
options.my.home = with lib; {
|
||
|
terminal = {
|
||
|
colors = {
|
||
|
background = mkColorOption "Background color" "#161616";
|
||
|
foreground = mkColorOption "Foreground color" "#ffffff";
|
||
|
foregroundBold = mkColorOption "Foreground bold color" "#ffffff";
|
||
|
cursor = mkColorOption "Cursor color" "#ffffff";
|
||
|
|
||
|
black = mkColorOption "Black" "#222222";
|
||
|
blackBold = mkColorOption "Black bold" "#666666";
|
||
|
|
||
|
red = mkColorOption "Red" "#e84f4f";
|
||
|
redBold = mkColorOption "Red bold" "#d23d3d";
|
||
|
|
||
|
green = mkColorOption "Green" "#b7ce42";
|
||
|
greenBold = mkColorOption "Green bold" "#bde077";
|
||
|
|
||
|
yellow = mkColorOption "Yellow" "#fea63c";
|
||
|
yellowBold = mkColorOption "Yellow bold" "#ffe863";
|
||
|
|
||
|
blue = mkColorOption "Blue" "#66aabb";
|
||
|
blueBold = mkColorOption "Blue bold" "#aaccbb";
|
||
|
|
||
|
magenta = mkColorOption "Magenta" "#b7416e";
|
||
|
magentaBold = mkColorOption "Magenta bold" "#e16a98";
|
||
|
|
||
|
cyan = mkColorOption "Cyan" "#6d878d";
|
||
|
cyanBold = mkColorOption "Cyan bold" "#42717b";
|
||
|
|
||
|
white = mkColorOption "White" "#dddddd";
|
||
|
whiteBold = mkColorOption "White bold" "#cccccc";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|