Modular status panel for X11 and Wayland, inspired by https://github.com/jaagr/polybar
Find a file
2020-01-11 14:45:56 +01:00
bar bar/wayland: don't use wl_display_dispatch() 2020-01-03 21:24:26 +01:00
completions Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
decorations meson: add 'fcft' dependency to decorations and modules 2019-12-01 18:02:23 +01:00
doc meson: fix version generation from git 2019-10-19 21:47:21 +02:00
external wlr-protocols: bump 2019-12-01 16:25:10 +01:00
modules meson: add 'fcft' dependency to decorations and modules 2019-12-01 18:02:23 +01:00
particles particle/string: remove useless debug log 2019-12-01 19:29:27 +01:00
test Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
.build.yml Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
.gitignore gitignore: subprojects directory 2020-01-11 14:45:56 +01:00
.gitlab-ci.yml Revert "ci: break" 2019-09-28 20:55:27 +02:00
.gitmodules fcft/tllist: remove git submodules 2020-01-11 14:43:26 +01:00
color.h initial commit: wip 2018-11-17 11:30:33 +01:00
config-verify.c tllist: use tllist from external git repository 2019-11-17 19:17:34 +01:00
config-verify.h config: conf_verify_dict() now assumes attr list is NULL-terminated 2019-01-13 11:37:05 +01:00
config.c config: font_from_name() no longer accepts a tllist 2019-12-01 19:29:36 +01:00
config.h fcft: use fcft instead of local copy of font.{c,h} 2019-12-01 16:00:15 +01:00
decoration.h cairo: replace cairo with pixman in decos, particles and modules 2019-09-22 01:56:58 +02:00
generate-version.sh generate-version: redirect *both* stdout and stderr to /dev/null 2019-11-27 21:20:41 +01:00
LICENSE license: MIT 2019-01-02 11:24:28 +01:00
log.c log: colorize console output only when stdout is a tty 2019-01-26 15:14:45 +01:00
log.h log: LOG_ERRNO_P(), like LOG_ERRNO(), except user provides errno value 2018-12-31 13:18:22 +01:00
main.c meson: fix version generation from git 2019-10-19 21:47:21 +02:00
meson.build PKGBUILD/meson: require fcft 0.4.x 2019-12-05 19:40:23 +01:00
meson_options.txt meson: initial support for building plugins as shared libraries 2019-05-01 18:21:35 +02:00
module.c particle: remove cairo context from begin_expose() 2019-09-22 00:55:06 +02:00
module.h particle: remove cairo context from begin_expose() 2019-09-22 00:55:06 +02:00
particle.c particle: add missing argument to debug log 2019-09-23 18:34:23 +02:00
particle.h fcft: use fcft instead of local copy of font.{c,h} 2019-12-01 16:00:15 +01:00
PKGBUILD PKGBUILD/meson: require fcft 0.4.x 2019-12-05 19:40:23 +01:00
PKGBUILD.wayland-only PKGBUILD: require fcft >= 0.2.0 2019-12-01 19:30:03 +01:00
plugin.c tllist: use tllist from external git repository 2019-11-17 19:17:34 +01:00
plugin.h plugins: export a const function pointer interface struct 2019-01-26 18:32:04 +01:00
README.md Revert "Dummy commit to test gitlab mirroring from other repo" 2019-11-18 22:10:15 +01:00
screenshot.png screenshot: update 2019-09-28 21:20:03 +02:00
stride.h font: initial port from cairo scaled fonts to raw freetype + pixman 2019-09-22 00:50:11 +02:00
tag.c tag: add support for "hex" and "oct" format modifiers 2019-01-21 21:05:38 +01:00
tag.h Reduce header intra-dependencies 2019-01-13 19:42:16 +01:00
xcb.c misc: xcb_connect() always returns a non-NULL pointer 2019-01-19 18:45:15 +01:00
xcb.h xcb: add xcb_error(), a generic describe-an-x-error function 2019-01-15 20:44:21 +01:00
yambar.desktop desktop: add Desktop Entry file 2019-09-29 20:58:15 +02:00
yml.c tllist: use tllist from external git repository 2019-11-17 19:17:34 +01:00
yml.h yml: add line/column info to every node 2019-01-11 23:20:06 +01:00

Yambar

Index

  1. Introduction
  2. Configuration
  3. Modules

Introduction

screenshot

yambar is a light-weight and configurable status panel (bar, for short) for X and Wayland.

It has a number of modules that provide information in the form of tags. For example, the clock module has a date tag that contains the current date.

The modules do not know how to present the information though. This is instead done by particles. And the user, you, decides which particles (and thus how to present the data) to use.

Furthermore, each particle can have a decoration. These are things like a different background, or an graphical underline.

There is no support for images or icons. use an icon font (e.g. Font Awesome, or Material Icons) if you want a graphical representation.

There are a number of modules and particles builtin. More can be added as plugins. You can even write your own!

To summarize: a bar displays information provided by modules, using particles and decorations. How is configured by you.

Configuration

Yambar is configured using YAML, in ~/.config/yambar/config.yml. It must define a top-level dictionary named bar:

bar:
  height: 26
  location: top
  background: 000000ff

  right:
    - clock:
        content:
          - string: {text: , font: *awesome}
          - string: {text: "{date}", right-margin: 5}
          - string: {text: , font: *awesome}
          - string: {text: "{time}"}

For details, see the man pages (yambar(5) is a good start).

Modules

Available modules:

  • alsa
  • backlight
  • battery
  • clock
  • i3 (and Sway)
  • label
  • mpd
  • network
  • removables
  • xkb (XCB backend only)
  • xwindow (XCB backend only)