2022-09-13 09:09:45 +02:00
![bumblebee-status logo ](https://github.com/kellya/bumblebee-status-icon/blob/main/img/bumblebee_status_rtl.svg )
2022-09-13 09:07:49 +02:00
(logo courtesy of [kellya ](https://github.com/kellya ) - thank you!)
2016-12-10 20:05:02 +01:00
# bumblebee-status
2020-06-19 09:16:29 +02:00
[![Documentation Status ](https://readthedocs.org/projects/bumblebee-status/badge/?version=main )](https://bumblebee-status.readthedocs.io/en/main/?badge=main)
2020-06-25 15:43:25 +02: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 08:04:11 +02:00
[![PyPI version ](https://badge.fury.io/py/bumblebee-status.svg )](https://badge.fury.io/py/bumblebee-status)
2022-07-29 14:08:02 +02:00
[![Tests ](https://github.com/tobi-wan-kenobi/bumblebee-status/actions/workflows/autotest.yml/badge.svg?branch=main )](https://github.com/tobi-wan-kenobi/bumblebee-status/actions/workflows/autotest.yml)
2022-07-29 14:08:37 +02:00
[![Code Climate ](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/badges/gpa.svg )](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status)
2022-07-29 14:03:12 +02:00
[![Test Coverage ](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/badges/coverage.svg )](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/coverage)
2016-12-11 13:50:33 +01:00
[![Issue Count ](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status/badges/issue_count.svg )](https://codeclimate.com/github/tobi-wan-kenobi/bumblebee-status)
2022-02-09 21:24:35 +01:00
[![CodeQL ](https://github.com/tobi-wan-kenobi/bumblebee-status/actions/workflows/codeql-analysis.yml/badge.svg?branch=main )](https://github.com/tobi-wan-kenobi/bumblebee-status/actions/workflows/codeql-analysis.yml)
2020-12-31 13:22:40 +01:00
![License ](https://img.shields.io/github/license/tobi-wan-kenobi/bumblebee-status )
2016-12-10 20:05:02 +01:00
2020-05-03 19:45:57 +02: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 19:00:17 +02:00
2020-06-19 09:16:29 +02:00
[Click here for a list of available modules ](https://bumblebee-status.readthedocs.io/en/main/modules.html )
2019-12-27 13:49:09 +01:00
2020-05-03 19:45:57 +02:00
![Solarized Powerline ](screenshots/themes/powerline-solarized.png )
2018-04-14 05:52:54 +02:00
2016-12-10 20:05:02 +01: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 19:45:57 +02:00
* ease of use, sane defaults (no mandatory configuration file)
2020-06-19 09:16:29 +02: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 20:05:02 +01:00
2020-05-03 19:45:57 +02:00
I hope you like it and I appreciate any kind of feedback: bug reports, feature requests, etc. :)
2016-12-10 20:05:02 +01:00
Thanks a lot!
2017-09-16 16:48:13 +02:00
Required i3wm version: 4.12+ (in earlier versions, blocks won't have background colors)
2020-11-29 22:14:33 +01:00
Supported Python versions: 3.4, 3.5, 3.6, 3.7, 3.8, 3.9
2017-02-25 07:54:03 +01:00
2018-04-05 08:06:47 +02:00
Supported FontAwesome version: 4 (free version of 5 doesn't include some of the icons)
2020-06-18 07:14:10 +02:00
---
2020-10-02 21:23:04 +02:00
***NOTE***
2020-06-18 07:14:10 +02:00
2021-11-07 13:50:44 +01:00
The default branch for this project is `main` . 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/ )
2020-06-18 07:14:10 +02:00
---
2018-10-13 15:43:42 +02:00
Example usage:
```
bar {
2020-05-26 08:52:55 +02:00
status_command < path > /bumblebee-status -m cpu memory battery time \
pasink pasource -p time.format="%H:%M" -t solarized
2018-10-13 15:43:42 +02:00
}
```
2016-12-10 20:05:02 +01:00
# Documentation
2020-05-21 08:52:20 +02:00
See [the docs ](https://bumblebee-status.readthedocs.io ) for detailed documentation.
2016-12-10 20:05:02 +01:00
2020-06-19 09:16:29 +02:00
See [FAQ ](https://bumblebee-status.readthedocs.io/en/main/FAQ.html ) for. well, FAQs.
2018-01-13 19:33:43 +01:00
2016-12-10 20:05:02 +01:00
Other resources:
2020-06-19 09:16:29 +02: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 20:05:02 +01:00
# Installation
```
2020-05-03 16:51:52 +02:00
# from git (development snapshot)
2016-12-10 20:05:02 +01:00
$ git clone git://github.com/tobi-wan-kenobi/bumblebee-status
2020-05-03 16:51:52 +02: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 20:05:02 +01:00
```
2020-12-31 13:21:35 +01:00
There is also a SlackBuild available here: [slackbuilds:bumblebee-status ](http://slackbuilds.org/repository/14.2/desktop/bumblebee-status/ ) - many thanks to [@Tonus1 ](https://github.com/Tonus1 )!
2022-01-06 10:13:40 +01:00
An ebuild, for Gentoo Linux, is available on [gallifrey overlay ](https://github.com/fedeliallalinea/gallifrey/tree/master/x11-misc/bumblebee-status ). Instructions for adding the overlay can be found [here ](https://github.com/fedeliallalinea/gallifrey/blob/master/README.md ).
2018-04-14 05:56:18 +02:00
# Dependencies
2020-06-19 09:16:29 +02:00
[Available modules ](https://bumblebee-status.readthedocs.io/en/main/modules.html ) lists the dependencies (Python modules and external executables)
2018-04-14 05:56:18 +02:00
for each module. If you are not using a module, you don't need the dependencies.
2021-08-10 19:19:30 +02:00
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
2016-12-10 20:05:02 +01:00
# Usage
2017-04-02 08:34:17 +02:00
## Normal usage
2017-08-20 10:59:39 +02:00
In your i3wm configuration, modify the *status_command* for your i3bar like this:
2016-12-10 20:05:02 +01:00
2020-05-30 10:08:41 +02:00
```bash
2016-12-10 20:05:02 +01:00
bar {
2019-07-30 08:26:31 +02:00
status_command < path to bumblebee-status / bumblebee-status > \
-m < list of modules > \
-p < list of module parameters > \
-t < theme >
2016-12-10 20:05:02 +01:00
}
```
2018-12-02 10:09:03 +01:00
You can retrieve a list of modules (and their parameters) and themes by entering:
2020-05-30 10:08:41 +02:00
```bash
2016-12-10 20:05:02 +01:00
$ cd bumblebee-status
$ ./bumblebee-status -l themes
$ ./bumblebee-status -l modules
```
2017-03-16 21:04:24 +01:00
To change the update interval, use:
2020-05-30 10:08:41 +02:00
```bash
2017-03-16 21:04:24 +01:00
$ ./bumblebee-status -m < list of modules > -p interval=< interval in seconds >
```
2020-05-03 16:51:52 +02:00
The update interval can also be changed on a per-module basis, like this:
2020-05-30 10:08:41 +02:00
```bash
2020-05-03 16:51:52 +02:00
$ ./bumblebee-status -m cpu memory -p cpu.interval=5s memory.interval=1m
```
2020-05-03 19:45:57 +02:00
All modules can be given "aliases" using `<module name>:<alias>` , by which they can be parametrized, for example:
2020-05-30 10:08:41 +02:00
```bash
2020-05-03 19:45:57 +02:00
$ ./bumblebee-status -m disk:root disk:home -p root.path=/ home.path=/home
```
2016-12-10 20:05:02 +01:00
As a simple example, this is what my i3 configuration looks like:
2020-05-30 10:08:41 +02:00
```bash
2016-12-10 20:05:02 +01:00
bar {
font pango:Inconsolata 10
position top
tray_output none
2020-05-26 08:52:55 +02: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 20:05:02 +01:00
}
```
Restart i3wm and - that's it!
# Examples
2020-06-19 09:16:29 +02:00
[List of themes ](https://bumblebee-status.readthedocs.io/en/main/themes.html )