bumblebee-status is a modular, theme-able status line generator for the i3 window manager.
Find a file
ibrokemypie 644c55292d
[modules/sensors] Linting
Un-import os, fix indentation
2017-06-05 12:56:39 +10:00
bin [bin] Re-add i3bar load script 2016-12-11 13:05:49 +01:00
bumblebee [modules/sensors] Linting 2017-06-05 12:56:39 +10:00
screenshots [screenshots] Add bluetooth module 2017-06-01 18:24:56 +02:00
tests [tests/module/disk] Adapt to new input parameters 2017-06-01 19:57:50 +02:00
themes [themes/icons/awesome-fonts] Replace "Sensors" icon with one included in FA 2017-06-03 16:03:46 +10: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 [core] Cleanly abort on ctrl+c 2017-05-13 20:28:11 +02:00
LICENSE Initial commit 2016-10-30 15:07:21 +01:00
README.md [doc] Add bluetooth module requirements 2017-06-01 18:27:03 +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

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')

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