# 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 = "ff5369"; }; green = { bright = "29f26c"; normal = "8aff80"; pastel = ""; }; blue = { normal = "30c7ff"; bright = "00e1ff"; pastel = ""; }; yellow = { normal = "fcfc51"; bright = "fcfc51"; pastel = ""; }; purple = { normal = "bd78fa"; bright = "c97ffa"; pastel = "00e1ff"; }; cyan = { normal = "29f8ff"; bright = "26e3fc"; pastel = ""; }; pink = { normal = "f74ddb"; bright = "ff63e5"; pastel = ""; }; orange = { normal = "ff5e69"; 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); }; }