zaphyra's git: nixfiles

zaphyra's nixfiles

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 
{
  config,
  systemConfig,
  lib,
  ...
}:

let
  colors = import ../colors.nix;

in
{

  options.zaphyra.programs.fuzzel.enable = lib.mkOption {
    type = lib.types.bool;
    default = systemConfig.modules.presets.graphical.enable;
  };

  config = lib.mkIf config.zaphyra.programs.fuzzel.enable {
    programs.fuzzel = {
      enable = true;
      settings = {
        main = {
          launch-prefix = "app2unit --fuzzel-compat --";
          dpi-aware = false;
          horizontal-pad = 15;
          vertical-pad = 15;
          inner-pad = 5;
        };
        border = {
          width = 2;
          radius = 6;
        };
        colors = {
          background = "#${
            lib.concatStrings (
              lib.map (elem: lib.toHexString elem) [
                colors.background.r
                colors.background.g
                colors.background.b
                (builtins.floor (100 * colors.background.a))
              ]
            )
          }"; # Background color
          border = "#${
            lib.concatStrings (
              lib.map (elem: lib.toHexString elem) [
                colors.accentBorder.r
                colors.accentBorder.g
                colors.accentBorder.b
                (builtins.floor (100 * colors.accentBorder.a))
              ]
            )
          }"; # The color of the match count stats printed at the right-hand side of the input prompt
          selection = "#${
            lib.concatStrings (
              lib.map (elem: lib.toHexString elem) [
                colors.buttonHover.r
                colors.buttonHover.g
                colors.buttonHover.b
                (builtins.floor (100 * colors.buttonHover.a))
              ]
            )
          }"; # Background color of the selected entry
          text = "#d8daddff"; # Text (foreground) color of unselected entries
          prompt = "#d8daddff"; # Text (foreground) color of prompt character(s)
          input = "#d8daddff"; # Text (foreground) color of input string
          match = "#d8daddff"; # Text (foreground) color of the matched substring
          selection-text = "#d8daddff"; # Text (foreground) color of the selected entry
          selection-match = "#b7d4edf2"; # Text (foreground) color of the matched substring of the selected entry
        };
      };
    };
  };

}