No description
  • C 89.9%
  • Python 3.3%
  • Meson 2.9%
  • Perl 2.5%
  • Shell 1.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Niklas Hambüchen d53da19a79
slurp_battery_info: Fix reading uninitialised memory (#531)
Fixes valgrind-found bug of the `for (walk = buf, ...` loop
reading all of `buf` even though `buf` is null-terminated string
(an only partly initialised char array).

    valgrind ./i3status -c ../etc/i3status.conf --run-once

    Conditional jump or move depends on uninitialised value(s)
      at 0x40F15A: slurp_battery_info (print_battery_info.c:164)
      by 0x40FA07: slurp_all_batteries (print_battery_info.c:558)
      by 0x40FCA6: print_battery_info (print_battery_info.c:612)
      by 0x409CA2: main (i3status.c:753)
2024-09-09 16:43:25 +02:00
.github/workflows GitHub Actions: update to clang-format 12 2023-01-07 09:48:49 +01:00
contrib contrib/net-speed: extend interface list filter (#376) 2020-05-01 21:45:36 +02:00
etc Switch build system from autotools to meson 2021-10-31 19:03:02 +01:00
include maybe_escape_markup: Make function memory-safe (#526) 2024-05-08 17:51:40 +02:00
man release v2.15 2024-08-19 18:28:44 +02:00
meson Switch build system from autotools to meson 2021-10-31 19:03:02 +01:00
src slurp_battery_info: Fix reading uninitialised memory (#531) 2024-09-09 16:43:25 +02:00
testcases Add another battery status called 'idle' 2022-10-09 23:55:10 +02:00
travis Switch to autotools (#316) 2019-01-23 08:56:40 +01:00
.clang-format switch to clang 3.8 & ignore sort oder of includes 2018-07-08 13:48:28 +02:00
.gitignore Switch build system from autotools to meson 2021-10-31 19:03:02 +01:00
CHANGELOG release v2.15 2024-08-19 18:28:44 +02:00
CONTRIBUTING.md add CONTRIBUTING file 2015-03-16 10:02:22 +01:00
i3status.c Add newlines to some die() messages 2024-01-28 14:46:10 +01:00
I3STATUS_VERSION release v2.15 2024-08-19 18:28:44 +02:00
LICENSE Separate license into file LICENSE 2009-10-15 20:44:24 +02:00
meson.build release v2.15 2024-08-19 18:28:44 +02:00
meson_options.txt Switch build system from autotools to meson 2021-10-31 19:03:02 +01:00
README.md update README for meson 2021-10-31 19:24:10 +01:00

i3status

Description

i3status is a small program for generating a status bar for i3bar, dzen2, xmobar or similar programs. It is designed to be very efficient by issuing a very small number of system calls, as one generally wants to update such a status line every second. This ensures that even under high load, your status bar is updated correctly. Also, it saves a bit of energy by not hogging your CPU as much as spawning the corresponding amount of shell commands would.

Development

i3status has the following dependencies:

  • libconfuse-dev
  • libyajl-dev
  • libasound2-dev
  • libnl-genl-3-dev
  • meson (compile-time only dependency)
  • asciidoc (only for the documentation)
  • libpulse-dev (for getting the current volume using PulseAudio)

On debian-based systems, the following line will install all requirements:

apt-get install autoconf libconfuse-dev libyajl-dev libasound2-dev libiw-dev asciidoc libpulse-dev libnl-genl-3-dev meson

Upstream

i3status is developed at https://github.com/i3/i3status

Compilation

Prefer installing i3status via your Linux distributions package manager.

If you absolutely have to build from source, use:

  mkdir build
  cd build
  meson ..
  ninja
  sudo ninja install