aboutsummaryrefslogtreecommitdiff
path: root/home-manager/tests/modules/programs/i3status/with-default.nix
blob: 0b7e4ee2fac7b440c64eb3660ceb2760a9e5edc3 (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
{ config, lib, pkgs, ... }:

with lib;

{
  config = {
    programs.i3status = {
      enable = true;
      enableDefault = true;
    };

    nixpkgs.overlays = [
      (self: super: { i3status = pkgs.writeScriptBin "dummy-i3status" ""; })
    ];

    nmt.script = ''
      assertFileContent \
        home-files/.config/i3status/config \
        ${
          pkgs.writeText "i3status-expected-config" ''
            general {
              colors = true
              interval = 5
            }

            order += "ipv6"
            order += "wireless _first_"
            order += "ethernet _first_"
            order += "battery all"
            order += "disk /"
            order += "load"
            order += "memory"
            order += "tztime local"
            battery all {
              format = "%status %percentage %remaining"
            }

            disk / {
              format = "%avail"
            }

            ethernet _first_ {
              format_down = "E: down"
              format_up = "E: %ip (%speed)"
            }

            ipv6 {
              
            }

            load {
              format = "%1min"
            }

            memory {
              format = "%used | %available"
              format_degraded = "MEMORY < %available"
              threshold_degraded = "1G"
            }

            tztime local {
              format = "%Y-%m-%d %H:%M:%S"
            }

            wireless _first_ {
              format_down = "W: down"
              format_up = "W: (%quality at %essid) %ip"
            }
          ''
        }
    '';
  };
}