No description
Find a file
2023-04-02 14:37:33 -05:00
data made signals more user-friendly 2023-04-02 14:37:33 -05:00
easyconf-lemonbar made signals more user-friendly 2023-04-02 14:37:33 -05:00
.gitignore implemented Bar object 2023-03-11 19:19:26 -06:00
LICENSE wrapped LICENSE at 80 chars 2023-02-10 16:06:11 -06:00
poetry.lock class groundwork laid 2023-03-11 19:19:26 -06:00
poetry.toml class groundwork laid 2023-03-11 19:19:26 -06:00
pyproject.toml class groundwork laid 2023-03-11 19:19:26 -06:00
README.md made signals more user-friendly 2023-04-02 14:37:33 -05:00
run.sh use exec in run script and changed config path 2023-04-02 13:58:33 -05:00

easyconf-lemonbar

A python script to easily configure lemonbar.

Signals

You may update individual modules by sending a real-time signal to the easyconf-lemonbar process. First, in the module configuration, specify which signal to listen for, e.g.

# Display a random number, and only update when we recieve the RTMIN+1 signal.
- name: "random"
  command: "python -c 'from random import randrange; print(randrange(1000))'"
  refresh: 0
  signal: 1

In the example above, the refresh is 0. This means that the module will never refresh on its own; it will wait for the RTMIN+1 signal. You may also configure your module to both refresh on a time interval AND listen for a signal.

Unfortunately, to send the signal, you cant just pkill easyconf-lemonbar. You have to read the PID from ECL's pidfile. I would recommend creating an alias in your shell as shown below.

$ alias ecl_kill="cat /run/user/${UID}/easyconf-lemonbar.pid | xargs kill"
$ ecl_kill -RTMIN+1

This will refresh the module that is listening for signal 1. To kill ecl completely, just run ecl_kill (after setting the above alias).