My personal build for dwm statusbar.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.7 KiB

7 months ago
  1. # dwmblocks
  2. Modular status bar for dwm written in c.
  3. This build is based on [lukesmithxyz's](https://github.com/lukesmithxyz) build.
  4. It uses my personal scripts you can find in my [dotfiles](https://github.com/tiyn/.dotfiles) in the `~/.local/bin/tools/statusbar` folder.
  5. # Modifying blocks
  6. The statusbar is made from text output from commandline programs. Blocks are
  7. added and removed by editing the config.h file.
  8. # Signaling changes
  9. Most statusbars constantly rerun every script every several seconds to update.
  10. This is an option here, but a superior choice is giving your module a signal
  11. that you can signal to it to update on a relevant event, rather than having it
  12. rerun idly.
  13. For example, the audio module has the update signal 10 by default. Thus,
  14. running `pkill -RTMIN+10 dwmblocks` will update it.
  15. You can also run `kill -44 $(pidof dwmblocks)` which will have the same effect,
  16. but is faster. Just add 34 to your typical signal number.
  17. My volume module *never* updates on its own, instead I have this command run
  18. along side my volume shortcuts in dwm to only update it when relevant.
  19. Note that if you signal an unexpected signal to dwmblocks, it will probably
  20. crash. So if you disable a module, remember to also disable any cronjobs or
  21. other scripts that might signal to that module.
  22. # Clickable modules
  23. Like i3blocks, this build allows you to build in additional actions into your
  24. scripts in response to click events. See the above linked scripts for examples
  25. of this using the `$BLOCK_BUTTON` variable.
  26. For this feature to work, you need the appropriate patch in dwm as well. See
  27. [here](https://dwm.suckless.org/patches/statuscmd/).
  28. Credit for those patches goes to Daniel Bylinka (daniel.bylinka@gmail.com).