bumblebee-status is a modular, theme-able status line generator for the i3 window manager.
Find a file
2017-06-15 12:58:13 +02:00
bin [bin] Re-add i3bar load script 2016-12-11 13:05:49 +01:00
bumblebee [modules/pulseaudio] Automatically restart pulseaudio daemon 2017-06-15 11:09:00 +02:00
screenshots [screenshots] Add getcrypto module 2017-06-15 07:38:52 +02:00
tests [tests/module/disk] Adapt to new input parameters 2017-06-01 19:57:50 +02:00
themes Add weather icons. 2017-06-12 22:26:33 -04:00
.codeclimate.yml [core/engine] Add aliasing mechanism to modules 2016-12-11 07:18:06 +01:00
.coveragerc [coveragerc] excludelines somehow broke the build for Python 2.7 2017-03-04 18:54:42 +01:00
.gitignore [gitignore] ignore vim swap files 2016-10-31 13:34:20 +01:00
.travis.yml [travis] Try to pin coverage to 4.3 for code climate 2017-05-13 16:58:43 +02:00
bumblebee-status [engine] Report current module when error occurs 2017-06-10 14:08:49 +02:00
CODE_OF_CONDUCT.md Create CODE_OF_CODUCT.md 2017-06-15 12:58:13 +02:00
LICENSE Initial commit 2016-10-30 15:07:21 +01:00
README.md [README] Update counters 2017-06-15 11:14:22 +02:00
runlint.sh [core] Widget creation/update overhaul 2016-12-08 08:44:54 +01:00
runtests.sh [runtests] Clean up coverage report + add it to runtests.sh 2017-03-04 11:35:25 +01:00
testjson.sh [testjson] Exclude known invalid JSON from tests 2017-02-24 18:13:17 +01:00

bumblebee-status

Build Status Code Climate Test Coverage Issue Count

Many, many thanks to all contributors! As of now, 19 of the modules are from various contributors (!), and only 16 from myself.

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

Focus is on:

  • Ease of use (no configuration files!)
  • Theme support
  • Extensibility (of course...)

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

Thanks a lot!

Supported Python versions: 2.7, 3.3, 3.4, 3.5, 3.6

Explicitly unsupported Python versions: 3.2 (missing unicode literals)

Documentation

See the wiki for documentation.

Other resources:

Installation

$ git clone git://github.com/tobi-wan-kenobi/bumblebee-status

Usage

Normal usage

Next, open your i3wm configuration and 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 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>

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!

Errors

If errors occur, you should see them in the i3bar itself. If that does not work, or you need more information for troubleshooting, you can activate a debug log using the -d or --debug switch:

$ ./bumblebee-status -d -m <list of modules>

This will create a file called debug.log in the same directory as the executable bumblebee-status.

Required Modules

Modules and commandline utilities are only required for modules, the core itself has no external dependencies at all.

  • psutil (for the modules 'cpu', 'memory', 'traffic')
  • netifaces (for the module 'nic', 'traffic')
  • requests (for the module 'weather')

Required commandline utilities

  • xbacklight (for the module 'brightness')
  • xset (for the module 'caffeine')
  • notify-send (for the module 'caffeine')
  • cmus-remote (for the module 'cmus')
  • dnf (for the module 'dnf')
  • gpmdp-remote (for the module 'gpmdp')
  • setxkbmap (for the module 'layout')
  • fakeroot (for the module 'pacman')
  • pacman (for the module 'pacman')
  • pactl (for the module 'pulseaudio')
  • ping (for the module 'ping')
  • redshift (for the module 'redshift')
  • xrandr (for the module 'xrandr')
  • sensors (for the module 'sensors')
  • mpc (for the module 'mpd')
  • bluez / blueman (for module 'bluetooth')
  • dbus-send (for module 'bluetooth')
  • nvidia-smi (for module 'nvidiagpu')

Examples

Here are some screenshots for all themes that currently exist:

Some themes (all 'Powerline' themes) require Font Awesome and a powerline-compatible font (powerline-fonts, for example) to display all icons correctly.

Gruvbox Powerline (-t gruvbox-powerline) (contributed by @paxy97):

Gruvbox Powerline

Solarized Powerline (-t solarized-powerline):

Solarized Powerline

Gruvbox (-t gruvbox):

Gruvbox

Solarized (-t solarized):

Solarized

Powerline (-t powerline):

Powerline

Default (nothing or -t default):

Default