This is my first ever Rust program.
The motivation of this is to create a soundboard with global hotkey support on Wayland, because Soundux wouldn’t add it :<
That’s why this soundboard is structurally very similar to Soundux.
Here’s a screenshot:
I read that global hotkey is not possible in Wayland. Or, at least, not as easily as with XOrg. Did you achived it ? Can you link to where you are doing it in your code please ? I’m curious, especially since its the first time I heard global hotkeys from a terminal program.
I try not to use global hotkeys myself. Do you have another way of controlling the soundboard ? Either from websocket, DBus, launching a command, … I like to use streampi1 (open source streamdeck clone) for streaming and it may use any of this interraction methods. (Websocket may require to write a plugin for yëur program.)
1 Streampi as stopped developpment for now in its v2 snapshots. Still usable. But the dev want to rewrite in C++/Qt for a v3.
During my development, I have found 2 different crates that handles global key input. They are
inputbot
andmki
. I looked at some issues ininputbot
and learnt that they are usinglibinput
as the backend. I didn’t read aboutmki
though.This soundboard is using
mki
, and global hotkey is working in Wayland (at least for Plasma).
Neat.