A fast and easy-to-use tool for creating status bars.
**[Documentation](https://github.com/polybar/polybar/wiki/) | [Installation](#installation) | [Support](SUPPORT.md) | [Donate](#donations)** **Polybar** aims to help users build beautiful and highly customizable status bars for their desktop environment, without the need of having a black belt in shell scripting. Here are a few screenshots showing you what it can look like: [![sample screenshot](https://i.imgur.com/xvlw9iHt.png)](https://i.imgur.com/xvlw9iH.png) [![sample screenshot](https://i.imgur.com/cYQOuRrt.png)](https://i.imgur.com/cYQOuRr.png) [![sample screenshot](https://i.imgur.com/A6spiZZt.png)](https://i.imgur.com/A6spiZZ.png) [![sample screenshot](https://i.imgur.com/TY5a5r9t.png)](https://i.imgur.com/TY5a5r9.png) You can find polybar configs for these example images (and other configs) [here](https://github.com/jaagr/dots/tree/master/.local/etc/themer/themes). ## Table of Contents * [Introduction](#introduction) * [Getting Help](#getting-help) * [Contributing](#contributing) * [Getting started](#getting-started) * [Installation](#installation) * [Configuration](#configuration) * [Running](#running) * [Community](#community) * [Contributors](#contributors) * [Donations](#donations) * [Sponsors](#sponsors) * [Backers](#backers) * [License](#license) ## Introduction The main purpose of **Polybar** is to help users create awesome status bars. It has built-in functionality to display information about the most commonly used services. Some of the services included so far: - Systray icons - Window title - Playback controls and status display for [MPD](https://www.musicpd.org/) using [libmpdclient](https://www.musicpd.org/libs/libmpdclient/) - [ALSA](https://www.alsa-project.org/main/index.php/Main_Page) and [PulseAudio](https://www.freedesktop.org/wiki/Software/PulseAudio/) volume controls - Workspace and desktop panel for [bspwm](https://github.com/baskerville/bspwm) and [i3](https://github.com/i3/i3) - Workspace module for [EWMH compliant](https://specifications.freedesktop.org/wm-spec/wm-spec-1.3.html#idm140130320786080) window managers - Keyboard layout and indicator status - CPU and memory load indicator - Battery display - Network connection details - Backlight level - Date and time label - Time-based shell script execution - Command output tailing - User-defined menu tree - Inter-process messaging - And more... [See the wiki for more details](https://github.com/polybar/polybar/wiki). ## Getting Help If you find yourself stuck, have a look at our [Support](SUPPORT.md) page for resources where you can find help. ## Contributing Read our [contributing guidelines](CONTRIBUTING.md) for how to get started with contributing to polybar. ## Getting started ### Installation Polybar is already available in the package manager for many repositories. We list some of the more prominent ones here. Also click the [image on the right](https://repology.org/project/polybar/versions) to see a more complete list of available polybar packages. If you are using **Debian** (unstable or testing), you can install [polybar](https://tracker.debian.org/pkg/polybar) using `sudo apt install polybar`. If you are using **Debian** (buster/stable), you need to enable [backports](https://wiki.debian.org/Backports) and then install using `sudo apt -t buster-backports install polybar`. If you are using **Ubuntu** 20.10 (Groovy Gorilla) or later, you can install polybar using `sudo apt install polybar`. If you are using **Arch Linux**, you can install the AUR package [polybar](https://aur.archlinux.org/packages/polybar/) to get the latest version, or [polybar-git](https://aur.archlinux.org/packages/polybar-git/) for the most up-to-date (unstable) changes. If you are using **Void Linux**, you can install [polybar](https://github.com/void-linux/void-packages/blob/master/srcpkgs/polybar/template) using `xbps-install -S polybar`. If you are using **NixOS**, polybar is available in both the stable and unstable channels and can be installed with the command `nix-env -iA nixos.polybar`. If you are using **Slackware**, polybar is available from the [SlackBuilds](https://slackbuilds.org/repository/14.2/desktop/polybar/) repository. If you are using **Source Mage GNU/Linux**, polybar spell is available in test grimoire and can be installed via `cast polybar`. If you are using **openSUSE Tumbleweed**, polybar is available from the [official repositories](https://build.opensuse.org/package/show/openSUSE%3AFactory/polybar) and can be installed via `zypper install polybar`. If you are using **openSUSE Leap**, polybar is available from [OBS](https://build.opensuse.org/package/show/X11:Utilities/polybar/). The package is available for openSUSE Leap 15.1 and above. If you are using **FreeBSD**, [polybar](https://svnweb.freebsd.org/ports/head/x11/polybar/) can be installed using `pkg install polybar`. Make sure you are using the `latest` package branch. If you are using **Gentoo**, both release and git-master versions are available in the [main](https://packages.gentoo.org/packages/x11-misc/polybar) repository. If you are using **Fedora**, you can install [polybar](https://src.fedoraproject.org/rpms/polybar) using `sudo dnf install polybar`. If you can't find your distro here, you will have to [build from source](https://github.com/polybar/polybar/wiki/Compiling). ### Configuration Details on how to setup and configure the bar and each module have been moved to [the wiki](https://github.com/polybar/polybar/wiki/Configuration). #### Install the example configuration Run the following inside the build directory: **WARNING:** This will overwrite your current configuration file! ~~~ sh $ make userconfig ~~~ Or you can copy the example config from `/usr/share/doc/polybar/config` or ` /usr/local/share/doc/polybar/config` (depending on your install parameters) **Note:** This example file is meant to showcase available modules and configuration options. Running it as-is will work but many modules will likely not start because they require machine-specific configuration and many of the font icons will not show up because they require a very specific [font configuration](https://github.com/polybar/polybar/wiki/Fonts). We encourage you to use it as a reference when building your own configuration. #### Launch the example bar ~~~ sh $ polybar example ~~~ ### Running [See the wiki for details on how to run polybar](https://github.com/polybar/polybar/wiki). ## Community Want to get in touch? * Join our Gitter room at [gitter.im/polybar/polybar](https://gitter.im/polybar/polybar) * We have our own subreddit at [r/polybar](https://www.reddit.com/r/polybar). * Chat with us in the `#polybar` IRC channel on the `chat.freenode.net` server. ## Contributors ### Owner * Michael Carlberg [**@jaagr**](https://github.com/jaagr/) ### Maintainers * [**@NBonaparte**](https://github.com/NBonaparte) * Chase Geigle [**@skystrife**](https://github.com/skystrife) * Patrick Ziegler [**@patrick96**](https://github.com/patrick96) ### Logo Design by * [**@Tobaloidee**](https://github.com/Tobaloidee) ### [All Contributors](https://github.com/polybar/polybar/graphs/contributors) ## Donations Polybar accepts donations through [open collective](https://opencollective.com/polybar). [Become a backer](https://opencollective.com/polybar) and support polybar! ### Sponsors ### Backers ## License Polybar is licensed under the MIT license. [See LICENSE for more information](https://github.com/polybar/polybar/blob/master/LICENSE).