summaryrefslogtreecommitdiff
path: root/modules/packages/fastfetch.nix
blob: 400d8ea4ec79ca3ff35d9fde933efc3e226d56a4 (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
{
  self,
  inputs,
  ...
}: {
  flake.wrapperModules.fastfetch = {
    config,
    lib,
    ...
  }: {
    settings = {
      logo = {
        source = config.pkgs.writeText "tree" ''
                        * *
                     *    *  *
                *  *    *     *  *
               *     *    *  *    *
           * *   *    *    *    *   *
           *     *  *    * * .#  *   *
           *   *     * #.  .# *   *
            *     "#.  #: #" * *    *
           *   * * "#. ##"       *
             *       "###
                       "##
                        ##.
                        .##:
                        :###
                        ;###
                      ,####.
          /\/\/\/\/\/.######.\/\/\/\/\
        ''; # ascii art by Joan G. Stark
        padding = {
          right = 2;
          left = 1;
          top = 2;
        };
        color = {
          "1" = "bright_green";
        };
      };

      display = {
        color = "bright_green";
      };

      modules = [
        "title"
        "separator"
        {
          type = "datetime";
          key = "Date";
          format = "{weekday}, {year}-{month-pretty}-{day-pretty}";
        }
        {
          type = "datetime";
          key = "Time";
          format = "{hour-pretty}:{minute-pretty}:{second-pretty}, {timezone-name}, UTC{offset-from-utc}";
        }
        "uptime"
        {
          type = "battery";
          key = "Battery";
          format = "{capacity}, {time-formatted} [{status}]";
        }
        "separator"
        "os"
        "host"
        "kernel"
        "packages"
        "shell"
        "display"
        "wm"
        "separator"
        "cpu"
        "gpu"
        "memory"
        "swap"
        "disk"
        "localip"
        "break"
        "colors"
      ];
    };
  };

  perSystem = {pkgs, ...}: {
    packages.fastfetch = inputs.wrapper-modules.wrappers.fastfetch.wrap {
      inherit pkgs;
      imports = [self.wrapperModules.fastfetch];
    };
  };
}