121 lines
1.8 KiB
Nix
121 lines
1.8 KiB
Nix
# Color schemes.
|
|
|
|
let inherit (builtins) mapAttrs map; in rec {
|
|
|
|
# A simple dark theme with vibrant colors.
|
|
"dark" = rec {
|
|
|
|
# Determines the background for applications such as the terminal,
|
|
# status bars or WM elements.
|
|
background = {
|
|
|
|
primary = "1a1a1a";
|
|
|
|
normal = "212121";
|
|
slight = "535353";
|
|
|
|
};
|
|
|
|
# Determines the foreground color of text.
|
|
foreground = {
|
|
|
|
primary = "fafafa";
|
|
|
|
normal = "efefef";
|
|
slight = "bdbdbd";
|
|
|
|
};
|
|
|
|
grayscales = [
|
|
"121212"
|
|
background.primary
|
|
background.normal
|
|
"2a2a2a"
|
|
"323232"
|
|
"424242"
|
|
"4a4a4a"
|
|
background.slight
|
|
"646464"
|
|
"6a6a6a"
|
|
"757575"
|
|
"7a7a7a"
|
|
"868686"
|
|
"8a8a8a"
|
|
"979797"
|
|
"9a9a9a"
|
|
"a8a8a8"
|
|
"aaaaaa"
|
|
"b9b9b9"
|
|
foreground.slight
|
|
"cacaca"
|
|
"dadada"
|
|
"eaeaea"
|
|
foreground.normal
|
|
foreground.primary
|
|
];
|
|
|
|
red = {
|
|
normal = "ff6161";
|
|
bright = "ff3b3b";
|
|
pastel = "ff7588";
|
|
};
|
|
|
|
green = {
|
|
normal = "8aff80";
|
|
bright = "29f26c";
|
|
pastel = "";
|
|
};
|
|
|
|
blue = {
|
|
normal = "30c7ff";
|
|
bright = "00e1ff";
|
|
pastel = "";
|
|
};
|
|
|
|
yellow = {
|
|
normal = "fcfc51";
|
|
bright = "fcfc51";
|
|
pastel = "";
|
|
};
|
|
|
|
purple = {
|
|
normal = "b58aff";
|
|
bright = "c97ffa";
|
|
pastel = "d9b5ff";
|
|
};
|
|
|
|
cyan = {
|
|
normal = "29f8ff";
|
|
bright = "26e3fc";
|
|
pastel = "63e8ff";
|
|
};
|
|
|
|
pink = {
|
|
normal = "ee8fff";
|
|
bright = "ff63e5";
|
|
pastel = "ff96e3";
|
|
};
|
|
|
|
orange = {
|
|
normal = "ff8c26";
|
|
bright = "fca151";
|
|
pastel = "";
|
|
};
|
|
|
|
misc = {
|
|
blueGrey = "9ccdd9";
|
|
teal = "00ccad";
|
|
lime = "d5ff63";
|
|
};
|
|
|
|
hex = mapAttrs (name: value:
|
|
if name == "grayscales"
|
|
then map (v: "#" + v) value
|
|
else if name == "hex"
|
|
then value
|
|
else mapAttrs (n: v: "#" + v) value
|
|
) (dark);
|
|
|
|
};
|
|
|
|
}
|