I3STATUS(1) i3 I3STATUS(1) (NAME) i3status - i3bar dzen2 xmobar lemonbar (SYNOPSIS) i3status [-c _] [-h] [-v] [--run-once] (OPTIONS) -c --config . i3status : 1. ~/.config/i3status/config ( $XDG_CONFIG_HOME/i3status/config ) 2. /etc/xdg/i3status/config ( $XDG_CONFIG_DIRS/i3status/config ) 3. ~/.i3status.conf 4. /etc/i3status.conf -h --help . -v --version . --run-once . (DESCRIPTION) i3status i3bar dzen2 xmobar lemonbar . (system calls) . . . (CONFIGURATION) i3status <<>> ( order). . . . . general { output_format = "dzen2" colors = true interval = 5 } order += "ipv6" order += "disk /" order += "run_watch DHCP" order += "run_watch VPNC" order += "path_exists VPN" order += "wireless wlan0" order += "ethernet eth0" order += "battery 0" order += "cpu_temperature 0" order += "memory" order += "load" order += "tztime local" order += "tztime berlin" wireless wlan0 { format_up = "W: (%quality at %essid, %bitrate) %ip" format_down = "W: down" } ethernet eth0 { format_up = "E: %ip (%speed)" format_down = "E: down" } battery 0 { format = "%status %percentage %remaining %emptytime" format_down = "No battery" status_chr = " CHR" status_bat = " BAT" status_unk = "? UNK" status_full = " FULL" status_idle = " IDLE" path = "/sys/class/power_supply/BAT%d/uevent" low_threshold = 10 } run_watch DHCP { pidfile = "/var/run/dhclient*.pid" } run_watch VPNC { # file containing the PID of a vpnc process pidfile = "/var/run/vpnc/pid" } path_exists VPN { # path exists when a VPN tunnel launched by nmcli/nm-applet is active path = "/proc/sys/net/ipv4/conf/tun0" } tztime local { format = "%Y-%m-%d %H:%M:%S" hide_if_equals_localtime = true } tztime berlin { format = "%Y-%m-%d %H:%M:%S %Z" timezone = "Europe/Berlin" } load { format = "%5min" } cpu_temperature 0 { format = "T: %degrees C" path = "/sys/devices/platform/coretemp.0/temp1_input" } memory { format = "%used" threshold_degraded = "10%" format_degraded = "MEMORY: %free" } disk "/" { format = "%free" } read_file uptime { path = "/proc/uptime" } (General) colors false . color_good color_degraded color_bad <<>> <<>> <<>> . colors . RGB ( ) (<<#>>) . : color_good = "#00FF00" color_separator . colors . output_format i3bar none . interval i3status (sleep) . output_format i3status . : i3bar i3 . (tray) i3status . JSON i3bar ( ). dzen2 Dzen X11 . dwm wmii xmonad . xmobar xmobar . xmonad . lemonbar lemonbar XCB . UTF-8 EWMH . term ANSI . i3status ( ). none . . i3bar . color_good color_degraded color_bad . general . i3status/i3bar separator . . . i3bar i3bar . . i3bar Pango markup "pango" . (<<&>>) (<<<>>) (<<>>>) (<<'>>) (<<">>) <<&>> <<<>> <<>>> <<'>> <<">> . ( ESSID ) . : general { output_format = "xmobar" separator = " " } order += "load" order += "disk /" load { format = "[ load: %1min, %5min, %15min ]" } disk "/" { format = "%avail" } IPv6 IPv6 ( IPv6 ) . format_up: %iface: %ip format_down: no IPv6 (Disk) . percentage_used percentage_free percentage_avail percentage_used_of_avail . "prefix_type" . : binary IEC ( Ki Mi Gi Ti) . . decimal SI ( k M G T) . custom ( K M G T) . low_threshold color_bad . low_threshold threshold_type "bytes_free" "bytes_avail" "percentage_free" "percentage_avail" (k, m, g, t) prefix_type . low_threshold 2 threshold_type "gbytes_avail" prefix_type "binary" . threshold_type "percentage_avail" low_threshold 0 . low_threshold format_below_threshold . "format_not_mounted" . "" . order: disk /mnt/usbstick format: %free (%avail)/ %total format: %percentage_used used, %percentage_free free, %percentage_avail avail prefix_type: custom low_threshold: 5 format_below_threshold: Warning: %percentage_avail threshold_type: percentage_free (Run-watch) pidfile (PID) ( ). VPN DHCP . format_down . format_down="" . order: run_watch DHCP format: %title: %status (Path-exists) . VPN NetworkManager . format_down . format_down="" . order: path_exists VPN format: %title: %status (Wireless) ESSID . . format_bitrate format_noise format_quality format_signal . _first_ ( "lo" ) . order: wireless wlan0 format_up: W: (%quality at %essid, %bitrate / %frequency) %ip format_down: W: down format_bitrate: "%g %cb/s" format_noise: "%03d%s" format_quality: "%03d%s" format_signal: "%03d%s" (Ethernet) IP ( ) . IPv4 IPv6 . _first_ ( "lo" ) . order: ethernet eth0 format_up: E: %ip (%speed) format_down: E: down (Battery) ( ) ( ) . ( ) last_full_capacity = true . hide_seconds = false . format_percentage . integer_battery_capacity = true format_percentage = "%.00f%s" . /sys path uevent . %d . low_threshold color_bad . low_threshold threshold_type "time" "percentage" . low_threshold 10 threshold_type "time" color_bad . "all" . ( ) /sys "%d" . /sys . UTF-8 . ( ) . FontAwesome . (CHR, BAT, UNK, FULL) . order ( ): battery 0 order ( ): battery all format: %status %remaining (%emptytime %consumption) format_down: No battery format_percentage: "%.02f%s" status_chr: CHR status_bat: BAT status_unk: ? UNK status_full: FULL low_threshold: 30 threshold_type: time path ( %d ): /sys/class/power_supply/CMB%d/uevent path ( ): /sys/class/power_supply/CMB1/uevent (CPU-Temperature) (thermal zone) . max_threshold . . max_threshold format_above_threshold . order: cpu_temperature 0 format: T: %degrees C max_threshold: 42 format_above_threshold: Warning T above threshold: %degrees C path: /sys/devices/platform/coretemp.0/temp1_input (CPU Usage) /proc/stat ( ) sysctl(3) ( FreeBSD/OpenBSD) . max_threshold color_bad . . max_threshold format_above_threshold . degraded_threshold color_degraded . . degraded_threshold format_above_degraded_threshold . N %cpu %cpu0 . FreeBSD . order: cpu_usage format: all: %usage CPU_0: %cpu0 CPU_1: %cpu1 max_threshold: 75 format_above_threshold: Warning above threshold: %usage degraded_threshold: 25 format_above_degraded_threshold: Warning above degraded threshold: %usage (Memory) /proc/meminfo . . total used free available shared . . _percentage . threshold_degraded threshold_critical color_degraded color_bad . iec ( T, G, M, K) . . format_degraded critical degraded format_degraded . format . . /proc/meminfo (kB) . auto . decimals . . meminfo . memory_used_method: memavailable (" " - "MemAvailable" free) memory_used_method: classical (" " - "free" - "buffers" - "cache" ) order: memory format: %free %available (%used) / %total format: %percentage_used used, %percentage_free free, %percentage_shared shared unit: auto, Ki, Mi, Gi, Ti decimals: 0, 1, 2, 3 threshold_degraded: 10% threshold_critical: 5% format_degraded: Memory LOW: %free (Load) ( ) . max_threshold color_bad . . max_threshold format_above_threshold . order: load format: %1min %5min %15min max_threshold: "0.1" format_above_threshold: Warning: %1min %5min %15min (Time) . TZ tztime . strftime(3) . order: time format: %Y-%m-%d %H:%M:%S (TzTime) . . strftime(3) . /usr/share/zoneinfo . /usr/share/zoneinfo/Europe/Berlin timezone tztime Europe/Berlin . (locale) locale . hide_if_equals_localtime true . order: tztime berlin format: %Y-%m-%d %H:%M:%S %Z timezone: Europe/Berlin locale: de_DE.UTF-8 format_time . %time . (): tztime berlin { format = "time: %time" format_time = "%H:%M %Z" timezone = "Europe/Berlin" hide_if_equals_localtime = true } (DDate) . ddate(1) . : %. %X . order: ddate format: %{%a, %b %d%}, %Y%N - %H (Volume) . PulseAudio ALSA ( ) . PulseAudio ALSA FreeBSD OpenBSD device mixer . mixer_idx -1 API OSS /dev/mixer /dev/mixer+mixer_idx+. PulseAudio device : device = "pulse" device = "pulse:N" N PulseAudio . : $ pacmd list-sinks | grep name: name: . . device "default" PulseAudio ALSA ( ) OSS ( FreeBSD/OpenBSD) . order: volume master format: (%devicename): %volume format_muted: (%devicename): 0%% : volume master { format = ": %volume" format_muted = ": muted (%volume)" device = "default" mixer = "Master" mixer_idx = 0 } (PulseAudio): volume master { format = ": %volume" format_muted = ": muted (%volume)" device = "pulse:1" } volume master { format = ": %volume" format_muted = ": muted (%volume)" device = "pulse:alsa_output.pci-0000_00_14.2.analog-stereo" } (File Contents) . /proc/uptime . Max_characters . . "no file" "error read" . order: read_file UPTIME format: "%title: %content" format_bad: "%title - %errno: %error" path: "/proc/uptime" Max_characters: 255 (UNIVERSAL MODULE OPTIONS) i3bar : align ( ) . center () right left. min_width ( ) . / (padding) . . . . . . separator . true . separator_block_width . separator_block_width ( ) . separator . . : disk "/" { format = "%avail" align = "left" min_width = 100 separator = false separator_block_width = 1 } I3STATUS DZEN2 (USING I3STATUS WITH DZEN2) dzen2 i3status . output_format dzen2 . : min_width . i3status dzen2: i3status | dzen2 -fg white -ta r -w 1280 \ -fn "-misc-fixed-medium-r-normal--13-120-75-75-C-70-iso8859-1" I3STATUS XMOBAR (USING I3STATUS WITH XMOBAR) xmobar ~/.xmobarrc . output_format i3status xmobar . : min_width . i3status xmobar: i3status | xmobar -o -t "%StdinReader%" -c "[Run StdinReader]" (WHAT ABOUT CPU FREQUENCY?) i3status . . . ("ondemand") i3status . . i3status / . . . . / I3STATUS (EXTERNAL SCRIPTS/PROGRAMS WITH I3STATUS) i3status . . : i3status: #!/bin/sh # shell script to prepend i3status with more stuff i3status | while : do read line echo "mystuff | $line" || exit 1 done .bin/my_i3status.sh i3status . JSON ( i3bar) (wrapper) . contrib/ : https://github.com/i3/i3status/tree/master/contrib (SIGNALS) SIGUSR1 nanosleep() i3status . killall -USR1 i3status . (SEE ALSO) strftime(3), date(1), glob(3), dzen2(1), xmobar(1) (AUTHORS) Michael Stapelberg and contributors Thorsten Toepper Baptiste Daroussin Axel Wagner Fernando Tarla Cardoso Lemos i3status 2.15 08/19/2024 I3STATUS(1)