wmtools/README.MD
2022-05-09 21:08:54 +01:00

3 KiB

A selection of information output tools for dmenu

These are a selection of independant tools for displaying various information about system status in dmenu. Some of them i.e. volume have options (up, down, mute...) which are selectable options in dmenu.

Tools

  • pingclock performs a single ping to a server and returns the response time
  • battery shows the current battery level
  • brightness shows the current backlight level and gives options to adjust it
  • volume shows the current volume level and gives options to adjust and manage it
  • date shows the date
  • fuzzytime shows the fuzzytime clock
  • wlan shows the state of the wireless network interface. SSID connected to and signal level.
  • nic shows the status and/or the ip address of the network interface card
  • temperature shows the current CPU temperature
  • notes a simple one liner note taking tool, displaying notes in dmenu/rofi
  • calculate a calculator, utilising qalculate - inspired by @fedops
  • emoji an emoji picker

The next two do not work with rofi unless you have alias dmenu=rofi set, but they're pretty nice tools

  • passmenu_wrapper a wrapper for passmenu. It basically just styles passmenu with no other features
  • command_wrapper inspired by passmenu_wrapper, a basic tool to run other dmenu related tools with uniform styling.
    • For example: dmenu_run, clipmenu, passmenu etc.

Example in dmenu:

dmenu_tools

Example of command_wrapper with clipmenu

command_wrap

How to compile

There are some configuration variables explicit to me, you'll need to change them for you for them to be useful I imagine.
Configuration variables are compile - there are no config files or runtime parameters (except for "rofi")

Each tool is compiled separately, for example:

nim c pingclock

and then run with

./pingclock 
or
./pingclock rofi

How to use

Personally, I have these bound to key combinations in i3. In fact, I have a seperate bindsym mode in which all these tools are accessible i.e. $mod+i to get to "info" mode then p to show pingclock.
It's completely up to you how to run them, they're just simple CLI tools really.

You can also set the volume and brightness levels by typing a numeric figure into the dmenu/rofi input box

Dependencies

  • dmenu or rofi
  • yad for calendar
  • passmenu for passmenu_wrapper
  • basically any tool that's used to gather the information.
  • "tools" for audio etc. (pamixer, ncpamixer, etc.) can be set in the source

Full disclosure

I'm aware my code is messy.
I'm aware my code is mostly undocumented.
But hopefully these things are simple enough to work out.