Modular status panel for X11 and Wayland, inspired by https://github.com/jaagr/polybar
Find a file
2019-09-28 20:46:06 +02:00
bar Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
completions Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
decorations Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
doc Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
external wlr-protocols: bump 2019-08-29 19:37:49 +02:00
modules Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
particles Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02: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 initial commit: wip 2018-11-17 11:30:33 +01:00
.gitlab-ci.yml ci: install pixman+freetype+fontconfig instead of cairo 2019-09-22 12:29:00 +02:00
.gitmodules Pull in wlr-protocols instead of wlroots 2019-02-12 20:00:35 +01:00
color.h initial commit: wip 2018-11-17 11:30:33 +01:00
config-verify.c config: make border.width and border.color optional 2019-02-17 15:47:13 +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 cairo: replace cairo with pixman in decos, particles and modules 2019-09-22 01:56:58 +02:00
config.h cairo: replace cairo with pixman in decos, particles and modules 2019-09-22 01:56:58 +02:00
decoration.h cairo: replace cairo with pixman in decos, particles and modules 2019-09-22 01:56:58 +02:00
font.c font: don't try to do fontconfig fallback on a fallback font 2019-09-22 12:44:08 +02:00
font.h font: remove lock (all rendering happens in the main thread) 2019-09-22 00:51:02 +02: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 Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
meson.build Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02: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 cairo: replace cairo with pixman in decos, particles and modules 2019-09-22 01:56:58 +02:00
PKGBUILD Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
PKGBUILD.wayland-only Rename project: f00bar -> yambar 2019-09-28 20:39:45 +02:00
plugin.c modules/sway-xkb: new module, uses sway 'input' events to expose kbd layout 2019-08-14 21:51:43 +02:00
plugin.h plugins: export a const function pointer interface struct 2019-01-26 18:32:04 +01:00
README.md README: dummy commit to test CI 2019-09-28 20:46:06 +02:00
screenshot.png README: some text; let's see what this looks like 2019-01-20 19:26:31 +01: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
tllist.h tllist: cast away const in tll_{r,}foreach() 2018-12-15 11:46:34 +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
yml.c yml: handle root's node being NULL 2019-04-29 18:49:44 +02: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)

dummy commit