# 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. `volurrme` have options (up, down, mute...) which are selectable options in dmenu. ## Tools - `pingclurrk` performs a single `ping` to a server and returns the response time - `batturry` shows the current battery level - `brightnurrs` shows the current backlight level and gives options to adjust it - `volurrme` shows the current volume level and gives options to adjust and manage it - `calendurr` shows the date - `furrytime` shows the fuzzytime clock - `wirelurrs` shows the state of the wireless network interface. SSID connected to and signal level. - `netwurrk` shows the status and/or the ip address of the network interface card - `temperaturr` shows the current CPU temperature - `noteurr` a simple one liner note taking tool, displaying notes in `dmenu`/`rofi` - `calculaturr` a calculator, utilising `qalculate` - inspired by [@fedops](https://codeberg.org/fedops/scripts) - `emurrji` an emoji picker - `remmina_choosurr` reads the files in your remmina config directory and allows you to connect to and edit them - `translaturr` utilises libretranslate (you'll need and API key or your own instance) to translate test. Prefix the text with `en>de`, `de>en`, `en>fr`, etc. as you need. Must be compiled with `-d:ssl` - `clipurr` clipboard manager - `passwuurd` a passmenu clone, that works in rofi too - `cmd_wrappurr` a basic tool to run other `dmenu` related tools with uniform styling. - For example: `dmenu_run`, `clipmenu`, `passmenu` etc. ### Why do all the tools have "urr" in them? This is something I was inspired to do after writing `clipurr`… "purr", like a cat... see? So I thought I'd rename everything else to conform to this amazing naming convention… cool eh‽ ### Example: ![wm_tools](https://codeberg.org/pswilde/wm_tools/src/branch/main/examples/urr_example.mp4) ## 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 Each tool is compiled separately, for example: ```sh nimble install or nim c pingclurrk ``` and then run with ```sh ./pingclurrk or ./pingclurrk rofi ``` ## How to use Personally, I have these bound to key combinations in i3 and sway. 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. ### 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 - 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.