Hey everyone,
I haven't been feeling too well recently. My back is acting up again, which is something I've dealt with since I broke it back in 2007. When I'm stuck not being able to do much, I tend to tinker with my desktop. So, I decided to work on a few new widgets for my Qtile setup.
The HiveRewards Widget
First, I created a widget that displays my unclaimed Hive reward balances directly in my status bar. It's a simple polling widget that uses my hive-nectar
library to fetch the current reward_hive_balance
, reward_hbd_balance
, and reward_vesting_balance
for my account. It's read-only, so no keys are required. It pairs nicely with the CoinGeckoTicker
widget to give me a quick overview.
The NowPlaying Widget
I've talked before about how I listen to SiriusXM through a custom command-line tools. To get the currently playing song into my bar, I created a NowPlaying
widget. This polls a local JSON endpoint that I recently added to my SiriusXM service, which is much cleaner than running a CLI tool every few seconds to see what's playing. The channel is set in the config, but I also added a command so I can change it on the fly without restarting Qtile.
qtile cmd-obj -o widget nowplaying -f set_channel -a "octane"
Automatic Terminal Swallowing
Finally, I implemented a feature from my sorta-suckless tools: terminal swallowing. This is a utility that automatically detects when a GUI application is launched from a terminal. When it happens, the terminal is minimized. Then, when you close the GUI application, the original terminal is automatically restored and focused. It works by walking the new application's process tree to find its parent terminal window. All this without having to prefix all GUI apps with the cli tool first, which is how my sorta-suckless version worked. It’s a small improvement that makes a huge difference.
All of these new widgets are available in my qtile_widgets
repository on GitHub for anyone who is interested.
As always, Michael Garcia a.k.a. TheCrazyGM