Go to file
lilydjwg 918de59988 custom module: free memory returned by libc's getline 2023-03-29 21:18:13 +08:00
.github make:Add phony 'test' rule 2023-03-13 00:50:19 +00:00
Dockerfiles Merge branch 'master' into YearCalendar 2023-01-23 18:42:32 +03:00
include Merge pull request #2037 from LukashonakV/Happy_clang 2023-03-02 19:42:38 +01:00
man config:output:Allow multiple exclusions & wildcard 2023-03-13 00:44:07 +00:00
nix dev: Added Nix Flake support 2022-12-06 18:44:26 +01:00
package Add archlinux PKGBUILD 2018-08-09 20:50:11 +02:00
protocol add river/layout 2023-01-31 16:34:38 +11:00
resources feat: wireplumber support 2022-11-16 23:23:07 -08:00
src custom module: free memory returned by libc's getline 2023-03-29 21:18:13 +08:00
subprojects feat: jsoncpp wrap 2022-11-03 14:08:22 +01:00
test test:Add test for output config with multiple exclusion/wildcard 2023-03-13 00:49:18 +00:00
.clang-format refactor: lint 2022-04-06 08:37:19 +02:00
.editorconfig chore: Add EditorConfig file 2019-04-18 15:55:45 +02:00
.envrc.sample Rename .envrc to .envrc.sample 2023-01-24 09:33:38 +01:00
.gitignore Merge pull request #1871 from Narice/feat/nix-flake-support 2023-01-24 09:34:03 +01:00
.gitmodules Add archlinux PKGBUILD 2018-08-09 20:50:11 +02:00
LICENSE Initial commit 2018-08-08 23:53:37 +02:00
Makefile make:Add phony 'test' rule 2023-03-13 00:50:19 +00:00
README.md Update README.md 2022-11-24 20:51:54 +01:00
flake.lock dev: Added Nix Flake support 2022-12-06 18:44:26 +01:00
flake.nix dev: Added Nix Flake support 2022-12-06 18:44:26 +01:00
meson.build Merge branch 'master' into add-river-layout 2023-02-11 13:22:46 +11:00
meson_options.txt Add mpris module 2023-01-06 20:55:31 +01: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 Licence Paypal Donate
Waybar

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

Current features

  • Sway (Workspaces, Binding mode, Focused window name)
  • River (Mapping mode, Tags, Focused window name)
  • Hyprland (Focused window name)
  • Tray #21
  • Local time
  • Battery
  • UPower
  • Network
  • Bluetooth
  • Pulseaudio
  • Wireplumber
  • Disk
  • Memory
  • Cpu load average
  • Temperature
  • MPD
  • Custom scripts
  • Custom image
  • Multiple output configuration
  • And many 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]
libevdev [KeyboardState module]
xkbregistry
upower [UPower battery 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 \
  libevdev-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 \
  upower \
  libxkbregistry-dev

Contributions welcome!
Have fun :)
The style guidelines are Google's

License

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