No description
Find a file
2022-05-06 11:12:13 +01:00
i3bar_tools_threaded refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
.gitignore first commit 2022-02-06 20:10:06 +00:00
base.nim added better dmenu cmd generation 2022-05-06 11:12:13 +01:00
battery.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
brightness.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
date.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
fuzzytime.nim added better dmenu cmd generation 2022-05-06 11:12:13 +01:00
LICENSE Create LICENSE 2022-04-30 17:57:58 +01:00
nic.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
notes.nim added better dmenu cmd generation 2022-05-06 11:12:13 +01:00
pingclock.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
README.MD refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
temperature.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
tides.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00
volume.nim added better dmenu cmd generation 2022-05-06 11:12:13 +01:00
wlan.nim refactor and made configuration constants easier to see/change 2022-05-04 16:17:02 +01:00

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

Example in dmenu:

https://user-images.githubusercontent.com/31094984/166115207-c24e9ec8-136e-4956-9842-bcde496bb743.mp4

Example in rofi:

https://user-images.githubusercontent.com/31094984/166115213-511fdaaa-4c04-461a-9976-38a2e9bd83fe.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 (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

https://user-images.githubusercontent.com/31094984/166156793-2089cc10-2649-4079-b82d-bba272253dd6.mp4

Dependencies

  • dmenu, 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.