Go to file
2022-07-16 23:13:38 +01:00
battery destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
brightness destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
calculate destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
clipurr destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
command_wrapper destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
emoji destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
fuzzytime destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
i3_workspaces destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
nic destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
notes destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
pingclock destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
remmina destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
screenshot destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
show_date destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
temperature destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
tides destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
translate destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
volume destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
wlan destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
.gitignore destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
base.nim destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
compile_all.sh destroyed repo, recreated with new nimble packaging 2022-07-16 23:07:51 +01:00
README.MD edited readme for nimble packaging 2022-07-16 23:13:38 +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
  • calculate a calculator, utilising qalculate - inspired by @fedops
  • emoji an emoji picker
  • remmina reads the files in your remmina config directory and allows you to connect to and edit them
  • translate 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

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:

nimble install
or
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.