tobi-wan-kenobi / bumblebee-status

bumblebee-status is a modular, theme-able status line generator for the i3 window manager.
https://bumblebee-status.readthedocs.io/en/main/
MIT License
1.23k stars 229 forks source link
gruvbox hacktoberfest i3bar i3wm nord powerline solarized

bumblebee-status

logo courtesy of kellya - thank you!

Documentation Status Commits since release AUR version (release) AUR version (git) PyPI version Contributors Tests

Code Climate Test Coverage Issue Count CodeQL License

Many, many thanks to all contributors! I am still amazed by and deeply grateful for how many PRs this project gets.

Click here for a list of available modules

Solarized Powerline

bumblebee-status is a modular, theme-able status line generator for the i3 window manager.

Focus is on:

I hope you like it and I appreciate any kind of feedback: bug reports, feature requests, etc. :)

Thanks a lot!

Required i3wm version: 4.12+ (in earlier versions, blocks won't have background colors)

Supported Python versions: 3.4, 3.5, 3.6, 3.7, 3.8, 3.9

Supported FontAwesome version: 4 (free version of 5 doesn't include some of the icons)


NOTE

The default branch for this project is main. If you are curious why: ZDNet:github-master-alternative


Example usage:

bar {
    status_command <path>/bumblebee-status -m cpu memory battery time \
        pasink pasource -p time.format="%H:%M" -t solarized
}

Documentation

See the docs for detailed documentation.

See FAQ for. well, FAQs.

Other resources:

Installation

# from git (development snapshot)
$ git clone git://github.com/tobi-wan-kenobi/bumblebee-status

# from AUR:
git clone https://aur.archlinux.org/bumblebee-status.git
cd bumblebee-status
makepkg -sicr

# from PyPI (thanks @tony):
# will install bumblebee-status into ~/.local/bin/bumblebee-status
pip install --user bumblebee-status

There is also a SlackBuild available here: slackbuilds:bumblebee-status - many thanks to @Tonus1!

An ebuild, for Gentoo Linux, is available on gallifrey overlay. Instructions for adding the overlay can be found here.

bumblebee-status is also avaliable in nixpkgs unstable channel- many thanks to [@augustebaum][https://github.com/augustebaum]!

For installing from nixpkgs, add the following snippet into your configuration.nix:

{
  environment.systemPackages = with pkgs; [
      (bumblebee-status.override{plugins = p:[p.cpu];})
  ];
}

replace [p.cpu] with the list of plugins that you want to use.

Dependencies

Available modules lists the dependencies (Python modules and external executables) for each module. If you are not using a module, you don't need the dependencies.

Some themes (e.g. all ‘powerline’ themes) require Font Awesome http://fontawesome.io/ and a powerline-compatible font (powerline-fonts) https://github.com/powerline/fonts

Usage

Normal usage

In your i3wm configuration, modify the status_command for your i3bar like this:

bar {
    status_command <path to bumblebee-status/bumblebee-status> \
        -m <list of modules> \
        -p <list of module parameters> \
        -t <theme>
}

You can retrieve a list of modules (and their parameters) and themes by entering:

$ cd bumblebee-status
$ ./bumblebee-status -l themes
$ ./bumblebee-status -l modules

To change the update interval, use:

$ ./bumblebee-status -m <list of modules> -p interval=<interval in seconds>

The update interval can also be changed on a per-module basis, like this:

$ ./bumblebee-status -m cpu memory -p cpu.interval=5s memory.interval=1m

All modules can be given "aliases" using <module name>:<alias>, by which they can be parametrized, for example:

$ ./bumblebee-status -m disk:root disk:home -p root.path=/ home.path=/home

As a simple example, this is what my i3 configuration looks like:

bar {
    font pango:Inconsolata 10
    position top
    tray_output none
    status_command ~/.i3/bumblebee-status/bumblebee-status -m nic disk:root cpu \
        memory battery date time pasink pasource dnf \
        -p root.path=/ time.format="%H:%M CW %V" date.format="%a, %b %d %Y" \
        -t solarized-powerline
}

Restart i3wm and - that's it!

Examples

List of themes