Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

programs.i3status-rust.enable

Whether to enable a replacement for i3-status written in Rust.

Type: boolean

Default:

false

Example:

true

Declared by:

programs.i3status-rust.package

The i3status-rust package to use.

Type: package

Default:

pkgs.i3status-rust

Declared by:

programs.i3status-rust.bars

Attribute set of i3status-rust bars, each with their own configuration. Each bar name generates a config file suffixed with the bar’s name from the attribute set, like so: config-${name}.toml.

This way, multiple config files can be generated, such as for having a top and a bottom bar.

See i3status-rust(1) for options.

Type: attribute set of (submodule)

Default:

{
  default = {
    blocks = [
      {
        alert = 10.0;
        block = "disk_space";
        info_type = "available";
        interval = 60;
        path = "/";
        warning = 20.0;
      }
      {
        block = "memory";
        format = " $icon mem_used_percents ";
        format_alt = " $icon $swap_used_percents ";
      }
      {
        block = "cpu";
        interval = 1;
      }
      {
        block = "load";
        format = " $icon $1m ";
        interval = 1;
      }
      {
        block = "sound";
      }
      {
        block = "time";
        format = " $timestamp.datetime(f:'%a %d/%m %R') ";
        interval = 60;
      }
    ];
  };
}

Example:

bottom = {
  blocks = [
    {
       block = "disk_space";
       path = "/";
       info_type = "available";
       interval = 60;
       warning = 20.0;
       alert = 10.0;
     }
     {
       block = "memory";
       format_mem = " $icon $mem_used_percents ";
       format_swap = " $icon $swap_used_percents ";
     }
     {
       block = "cpu";
       interval = 1;
     }
     {
       block = "load";
       interval = 1;
       format = " $icon $1m ";
     }
     { block = "sound"; }
     {
       block = "time";
       interval = 60;
       format = " $timestamp.datetime(f:'%a %d/%m %R') ";
     }
  ];
  settings = {
    theme =  {
      theme = "solarized-dark";
      overrides = {
        idle_bg = "#123456";
        idle_fg = "#abcdef";
      };
    };
  };
  icons = "awesome5";
  theme = "gruvbox-dark";
};

Declared by:

programs.i3status-rust.bars.<name>.blocks

Configuration blocks to add to i3status-rust config. See https://github.com/greshake/i3status-rust/blob/master/blocks.md for block options.

Type: TOML value

Default:

[
  {
    block = "cpu";
  }
  {
    alert = 10.0;
    block = "disk_space";
    format = " $icon root: $available.eng(w:2) ";
    info_type = "available";
    interval = 20;
    path = "/";
    warning = 20.0;
  }
  {
    block = "memory";
    format = " $icon $mem_total_used_percents.eng(w:2) ";
    format_alt = " $icon_swap $swap_used_percents.eng(w:2) ";
  }
  {
    block = "sound";
    click = [
      {
        button = "left";
        cmd = "pavucontrol";
      }
    ];
  }
  {
    block = "time";
    format = " $timestamp.datetime(f:'%a %d/%m %R') ";
    interval = 5;
  }
]

Example:

[
  {
    block = "disk_space";
    path = "/";
    info_type = "available";
    interval = 60;
    warning = 20.0;
    alert = 10.0;
  }
  {
    block = "sound";
    format = " $icon $output_name {$volume.eng(w:2) |}";
    click = [
      {
        button = "left";
        cmd = "pavucontrol --tab=3";
      }
    ];
    mappings = {
      "alsa_output.pci-0000_00_1f.3.analog-stereo" = "";
      "bluez_sink.70_26_05_DA_27_A4.a2dp_sink" = "";
    };
  }
];

Declared by:

programs.i3status-rust.bars.<name>.icons

The icons set to use. See https://github.com/greshake/i3status-rust/blob/master/doc/themes.md for a list of available icon sets.

Type: string

Default:

"none"

Example:

"awesome6"

Declared by:

programs.i3status-rust.bars.<name>.settings

Any extra options to add to i3status-rust config.

Type: TOML value

Default:

{ }

Example:

{
  theme =  {
    theme = "solarized-dark";
    overrides = {
      idle_bg = "#123456";
      idle_fg = "#abcdef";
    };
  };
}

Declared by:

programs.i3status-rust.bars.<name>.theme

The theme to use. See https://github.com/greshake/i3status-rust/blob/master/doc/themes.md for a list of available themes.

Type: string

Default:

"plain"

Example:

"gruvbox-dark"

Declared by: