summaryrefslogtreecommitdiff
path: root/common/modules/matugen/templates/matugen-sequences.nix
blob: e1589840c7adbcdb04eaee98d342fde7b83cbf92 (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
{
  config,
  lib,
  ...
}:
{
  config = lib.mkIf config.beeMods.matugen.enable {
    xdg.configFile."matugen/templates/sequences" = {
      text = ''
        #!/bin/sh
        SEQ=""
        SEQ="$SEQ$(printf '\033]4;0;rgb:\{{color0 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;1;rgb:\{{color1 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;2;rgb:\{{color2 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;3;rgb:\{{color3 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;4;rgb:\{{color4 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;5;rgb:\{{color5 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;6;rgb:\{{color6 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;7;rgb:\{{color7 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;8;rgb:\{{color8 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;9;rgb:\{{color9 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;10;rgb:\{{color10 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;11;rgb:\{{color11 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;12;rgb:\{{color12 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;13;rgb:\{{color13 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;14;rgb:\{{color14 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]4;15;rgb:\{{color15 | xrgb}}\007')"
        SEQ="$SEQ$(printf '\033]10;{{colors.on_surface.default.hex}}\007')"
        <* if {{ is_dark_mode }} *>
        SEQ="$SEQ$(printf '\033]11;{{colors.background.default.hex}}\007')"
        <* else *>
        SEQ="$SEQ$(printf '\033]11;{{colors.surface_container.default.hex}}\007')"
        <* endif *>
        SEQ="$SEQ$(printf '\033]12;{{colors.primary.default.hex}}\007')"
        SEQ="$SEQ$(printf '\033]17;{{colors.on_surface.default.hex}}\007')"
        SEQ="$SEQ$(printf '\033]19;{{colors.primary_container.default.hex}}\007')"

        for tty in /dev/pts/*; do
          [ -w "$tty" ] && printf '%s' "$SEQ" > "$tty"
        done
      '';
      executable = true;
    };
  };
}