summaryrefslogtreecommitdiff
path: root/users/kassouni/ayu.nix
blob: 37ff83f17c436b0740d89b38574bb40d4ec4b8a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
{ config, lib, ... }:

with lib;

{
  options.colorScheme = {
    palette = mkOption {
      type = types.attrs;
      default = {
        range = {
          min = 0.675;
          max = 0.875;
        };
        steps = 5;
        gray = "#5A6673";
        red = "#F07178";
        pink = "#F29668";
        orange = "#FF8F40";
        peach = "#E6C08A";
        yellow = "#FFB454";
        green = "#AAD94C";
        teal = "#95E6CB";
        indigo = "#39BAE6";
        blue = "#59C2FF";
        purple = "#D2A6FF";
      };
    };

    syntax = mkOption {
      type = types.attrs;
      default = {
        tag = "#39BAE6";
        func = "#FFB454";
        entity = "#59C2FF";
        string = "#AAD94C";
        regexp = "#95E6CB";
        markup = "#F07178";
        keyword = "#FF8F40";
        special = "#E6C08A";
        comment = "#5A6673";
        constant = "#D2A6FF";
        operator = "#F29668";
      };
    };

    terminal = mkOption {
      type = types.attrs;
      default = {
        black = "#0A0000";
        red = "#E0656E";
        green = "#9DC842";
        yellow = "#F5A94A";
        blue = "#4FB8F5";
        magenta = "#C89CF5";
        cyan = "#8BDCC1";
        white = "#FFFFFF";
        brightBlack = "#0A0000";
        brightRed = "#F07178";
        brightGreen = "#AAD94C";
        brightYellow = "#FFB454";
        brightBlue = "#59C2FF";
        brightMagenta = "#D2A6FF";
        brightCyan = "#95E6CB";
        brightWhite = "#FFFFFF";
      };
    };

    vcs = mkOption {
      type = types.attrs;
      default = {
        added = "#70BF56";
        modified = "#73B8FF";
        removed = "#F26D78";
      };
    };

    surface = mkOption {
      type = types.attrs;
      default = {
        sunk = "#030609";
        base = "#0D1017";
        lift = "#10141C";
        over = "#FFFFFF";
      };
    };

    editor = mkOption {
      type = types.attrs;
      default = {
        fg = "#BFBDB6";
        bg = "#10141C";
        line = "#161A24";
        selection = {
          active = "#3388FF";
          activeAlpha = "#40";
          inactive = "#80B5FF";
          inactiveAlpha = "#26";
        };
        findMatch = {
          active = "#4C4126";
          activeAlpha = "#FF";
          inactive = "#4C4126";
          inactiveAlpha = "#80";
        };
        lineNumber = {
          active = "#5A6378";
          activeAlpha = "#FF";
          normal = "#5A6378";
          normalAlpha = "#A6";
        };
        indentGuide = {
          active = "#5A6378";
          activeAlpha = "#A1";
          normal = "#5A6378";
          normalAlpha = "#42";
        };
      };
    };

    ui = mkOption {
      type = types.attrs;
      default = {
        fg = "#5A6378";
        bg = "#0D1017";
        line = "#1B1F29";
        selection = {
          active = "#475266";
          activeAlpha = "#40";
          normal = "#475266";
          normalAlpha = "#33";
        };
        panel = {
          bg = "#141821";
          shadow = "#000000";
          shadowAlpha = "#80";
        };
        popup = {
          bg = "#0F131A";
          shadow = "#000000";
          shadowAlpha = "#80";
        };
      };
    };

    common = mkOption {
      type = types.attrs;
      default = {
        accent = {
          tint = "#E6B450";
          on = "#9E7833";
        };
        error = "#D95757";
      };
    };
  };
}