Go to file
Aleksei Bavshin 943ba3a2da
fix: schedule output destruction on idle callback
Defer destruction of bars for the output to the next iteration of the
event loop to avoid deleting objects referenced by currently executed
code.
2021-02-22 18:35:09 -08:00
.github CI: add FreeBSD to Actions 2020-12-23 20:40:44 +00:00
Dockerfiles Dockerfiles/alpine: add sndio-dev. 2020-10-04 02:54:57 -03:00
include fix: schedule output destruction on idle callback 2021-02-22 18:35:09 -08:00
man refactor(bluetooth): remove `interval` and timer thread 2021-02-09 21:27:21 -08:00
package Add archlinux PKGBUILD 2018-08-09 20:50:11 +02:00
protocol Update to the latest version of the foreign toplevel manager protocol 2020-12-04 08:03:43 +01:00
resources Configure systemd.service file to allow reloading 2021-02-19 14:33:38 +01:00
src fix: schedule output destruction on idle callback 2021-02-22 18:35:09 -08:00
subprojects Update fmt subproject to 7.1.3 2020-11-30 17:35:02 -08:00
.clang-format chore: Add clang-format configuration and format MPD module 2019-04-18 15:57:57 +02:00
.editorconfig chore: Add EditorConfig file 2019-04-18 15:55:45 +02:00
.gitignore Ignore all potential build directories 2019-02-28 19:57:49 -07:00
.gitmodules Add archlinux PKGBUILD 2018-08-09 20:50:11 +02:00
.travis.yml .travis.yml: add sndio to FreeBSD run. 2020-10-04 02:54:57 -03:00
LICENSE Initial commit 2018-08-08 23:53:37 +02:00
Makefile Switch default Makefile rule from run to build 2020-03-14 16:25:33 -04:00
README.md sndio: Add module. 2020-10-04 02:54:57 -03:00
meson.build Use g_unichar_iswide to properly align calendar on CJK locales 2021-01-31 11:53:53 -08:00
meson_options.txt sndio: Add module. 2020-10-04 02:54:57 -03:00
preview-2.png chore: optimize preview 2018-10-01 18:56:58 +02:00
preview.png chore: optimize preview 2018-10-01 18:56:58 +02:00

README.md

Waybar Travis Licence Paypal Donate
Waybar

Highly customizable Wayland bar for Sway and Wlroots based compositors.
Available in Arch community or AUR, openSUSE, and Alpine Linux
Waybar examples

Current features

  • Sway (Workspaces, Binding mode, Focused window name)
  • Tray #21
  • Local time
  • Battery
  • Network
  • Bluetooth
  • Pulseaudio
  • Disk
  • Memory
  • Cpu load average
  • Temperature
  • MPD
  • Custom scripts
  • Multiple output configuration
  • And much more customizations

Configuration and Styling

See the wiki for more details.

Installation

Waybar is available from a number of Linux distributions:

Packaging status

An Ubuntu PPA with more recent versions is available here.

Building from source

$ git clone https://github.com/Alexays/Waybar
$ cd Waybar
$ meson build
$ ninja -C build
$ ./build/waybar
# If you want to install it
$ ninja -C build install
$ waybar

Dependencies

gtkmm3
jsoncpp
libsigc++
fmt
wayland
chrono-date
spdlog
libgtk-3-dev [gtk-layer-shell]
gobject-introspection [gtk-layer-shell]
libgirepository1.0-dev [gtk-layer-shell]
libpulse [Pulseaudio module]
libnl [Network module]
libappindicator-gtk3 [Tray module]
libdbusmenu-gtk3 [Tray module]
libmpdclient [MPD module]
libsndio [sndio module]

Build dependencies

cmake
meson
scdoc
wayland-protocols

On Ubuntu you can install all the relevant dependencies using this command (tested with 19.10 and 20.04):

sudo apt install \
  clang-tidy \
  gobject-introspection \
  libdbusmenu-gtk3-dev \
  libfmt-dev \
  libgirepository1.0-dev \
  libgtk-3-dev \
  libgtkmm-3.0-dev \
  libinput-dev \
  libjsoncpp-dev \
  libmpdclient-dev \
  libnl-3-dev \
  libnl-genl-3-dev \
  libpulse-dev \
  libsigc++-2.0-dev \
  libspdlog-dev \
  libwayland-dev \
  scdoc

Contributions welcome! - have fun :)
The style guidelines is Google's

License

Waybar is licensed under the MIT license. See LICENSE for more information.