2016-12-10 19:05:02 +00:00
# bumblebee-status
2020-06-19 07:16:29 +00:00
[![Build Status ](https://travis-ci.org/tobi-wan-kenobi/bumblebee-status.svg?branch=main )](https://travis-ci.org/tobi-wan-kenobi/bumblebee-status)
[![Documentation Status ](https://readthedocs.org/projects/bumblebee-status/badge/?version=main )](https://bumblebee-status.readthedocs.io/en/main/?badge=main)
2020-06-25 13:43:25 +00:00
![AUR version (release) ](https://img.shields.io/aur/version/bumblebee-status )
![AUR version (git) ](https://img.shields.io/aur/version/bumblebee-status-git )
2020-06-04 06:04:11 +00:00
[![PyPI version ](https://badge.fury.io/py/bumblebee-status.svg )](https://badge.fury.io/py/bumblebee-status)
2016-12-11 12:50:33 +00:00
[![Code Climate ](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/badges/gpa.svg )](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status)
[![Test Coverage ](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/badges/coverage.svg )](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/coverage)
[![Issue Count ](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/badges/issue_count.svg )](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status)
2016-12-10 19:05:02 +00:00
2020-05-03 17:45:57 +00:00
**Many, many thanks to all contributors! I am still amazed by and deeply grateful for how many PRs this project gets.**
2017-06-12 17:00:17 +00:00
2020-06-19 07:16:29 +00:00
[Click here for a list of available modules ](https://bumblebee-status.readthedocs.io/en/main/modules.html )
2019-12-27 12:49:09 +00:00
2020-05-03 17:45:57 +00:00
![Solarized Powerline ](screenshots/themes/powerline-solarized.png )
2018-04-14 03:52:54 +00:00
2016-12-10 19:05:02 +00:00
bumblebee-status is a modular, theme-able status line generator for the [i3 window manager ](https://i3wm.org/ ).
Focus is on:
2020-05-03 17:45:57 +00:00
* ease of use, sane defaults (no mandatory configuration file)
2020-06-19 07:16:29 +00:00
* [easy creation of custom themes ](https://bumblebee-status.readthedocs.io/en/main/development/theme.html )
* [easy creation of custom modules ](https://bumblebee-status.readthedocs.io/en/main/development/module.html )
2016-12-10 19:05:02 +00:00
2020-05-03 17:45:57 +00:00
I hope you like it and I appreciate any kind of feedback: bug reports, feature requests, etc. :)
2016-12-10 19:05:02 +00:00
Thanks a lot!
2017-09-16 14:48:13 +00:00
Required i3wm version: 4.12+ (in earlier versions, blocks won't have background colors)
2020-03-13 13:23:11 +00:00
Supported Python versions: 3.4, 3.5, 3.6, 3.7, 3.8
2017-02-25 06:54:03 +00:00
2018-04-05 06:06:47 +00:00
Supported FontAwesome version: 4 (free version of 5 doesn't include some of the icons)
2020-06-18 05:14:10 +00:00
---
**NOTE**
2020-06-19 07:16:29 +00:00
The default branch for this project is `main` - I'm keeping `master` around for backwards compatibility (I do not want to break anybody's setup), but the default branch is now `main` !
2020-06-18 05:14:10 +00:00
If you are curious why: [ZDNet:github-master-alternative ](https://www.zdnet.com/article/github-to-replace-master-with-alternative-term-to-avoid-slavery-references/ )
---
2018-10-13 13:43:42 +00:00
Example usage:
```
bar {
2020-05-26 06:52:55 +00:00
status_command < path > /bumblebee-status -m cpu memory battery time \
pasink pasource -p time.format="%H:%M" -t solarized
2018-10-13 13:43:42 +00:00
}
```
2016-12-10 19:05:02 +00:00
# Documentation
2020-05-21 06:52:20 +00:00
See [the docs ](https://bumblebee-status.readthedocs.io ) for detailed documentation.
2016-12-10 19:05:02 +00:00
2020-06-19 07:16:29 +00:00
See [FAQ ](https://bumblebee-status.readthedocs.io/en/main/FAQ.html ) for. well, FAQs.
2018-01-13 18:33:43 +00:00
2016-12-10 19:05:02 +00:00
Other resources:
2020-06-19 07:16:29 +00:00
* A list of [available modules ](https://bumblebee-status.readthedocs.io/en/main/modules.html )
* [How to write a module ](https://bumblebee-status.readthedocs.io/en/main/development/module.html )
* [How to write a theme ](https://bumblebee-status.readthedocs.io/en/main/development/theme.html )
2016-12-10 19:05:02 +00:00
# Installation
```
2020-05-03 14:51:52 +00:00
# from git (development snapshot)
2016-12-10 19:05:02 +00:00
$ git clone git://github.com/tobi-wan-kenobi/bumblebee-status
2020-05-03 14:51:52 +00:00
# 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
2016-12-10 19:05:02 +00:00
```
2018-04-14 03:56:18 +00:00
# Dependencies
2020-06-19 07:16:29 +00:00
[Available modules ](https://bumblebee-status.readthedocs.io/en/main/modules.html ) lists the dependencies (Python modules and external executables)
2018-04-14 03:56:18 +00:00
for each module. If you are not using a module, you don't need the dependencies.
2016-12-10 19:05:02 +00:00
# Usage
2017-04-02 06:34:17 +00:00
## Normal usage
2017-08-20 08:59:39 +00:00
In your i3wm configuration, modify the *status_command* for your i3bar like this:
2016-12-10 19:05:02 +00:00
2020-05-30 08:08:41 +00:00
```bash
2016-12-10 19:05:02 +00:00
bar {
2019-07-30 06:26:31 +00:00
status_command < path to bumblebee-status / bumblebee-status > \
-m < list of modules > \
-p < list of module parameters > \
-t < theme >
2016-12-10 19:05:02 +00:00
}
```
2018-12-02 09:09:03 +00:00
You can retrieve a list of modules (and their parameters) and themes by entering:
2020-05-30 08:08:41 +00:00
```bash
2016-12-10 19:05:02 +00:00
$ cd bumblebee-status
$ ./bumblebee-status -l themes
$ ./bumblebee-status -l modules
```
2017-03-16 20:04:24 +00:00
To change the update interval, use:
2020-05-30 08:08:41 +00:00
```bash
2017-03-16 20:04:24 +00:00
$ ./bumblebee-status -m < list of modules > -p interval=< interval in seconds >
```
2020-05-03 14:51:52 +00:00
The update interval can also be changed on a per-module basis, like this:
2020-05-30 08:08:41 +00:00
```bash
2020-05-03 14:51:52 +00:00
$ ./bumblebee-status -m cpu memory -p cpu.interval=5s memory.interval=1m
```
2020-05-03 17:45:57 +00:00
All modules can be given "aliases" using `<module name>:<alias>` , by which they can be parametrized, for example:
2020-05-30 08:08:41 +00:00
```bash
2020-05-03 17:45:57 +00:00
$ ./bumblebee-status -m disk:root disk:home -p root.path=/ home.path=/home
```
2016-12-10 19:05:02 +00:00
As a simple example, this is what my i3 configuration looks like:
2020-05-30 08:08:41 +00:00
```bash
2016-12-10 19:05:02 +00:00
bar {
font pango:Inconsolata 10
position top
tray_output none
2020-05-26 06:52:55 +00:00
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
2016-12-10 19:05:02 +00:00
}
```
Restart i3wm and - that's it!
# Examples
2020-06-19 07:16:29 +00:00
[List of themes ](https://bumblebee-status.readthedocs.io/en/main/themes.html )