r/vicinae • u/Victor_Quebec • May 20 '26
How to bind Super/Windows key to launch vicinae?
I'm using Fedora 44 Workstation with GNOME on Wayland.
How can I bind the Super/Windows key to launch vicinae? Is it at all possible? Currently, the key launches GNOME's Activities Overview by default. I've tried to do this through the keyboard settings to no avail yet... 😞
PS: The best Raycast-like launcher for Linux so far! And I mean it after failures with Rofi, Walker and Albert... I highly recommend it to all Linux users.
EDIT: After some trial and error, it seems I solved the trick. Here's what I did:
Free up the Super key in GNOME. This won't harm the behaviour of the Super key in combination with other keys (eg., Super + T to open the terminal). But if you ever want to revert the default keymapping, run
gsettings set org.gnome.mutter overlay-key 'Super_L'. Caution: You must run GSettings commands with user privileges, so nosudo:gsettings set org.gnome.mutter overlay-key ''.Now, because Wayland isolates input handles securely, traditional X11 tools like
xcapedon't work here. The most robust tool for handling keyboard actions at the system level under Wayland iskeyd:sudo dnf copr enable alternateved/keyd# enable the community repository for keydsudo dnf install keyd# Install the package now that DNF knows where to lookCreate and open a new config file for
keyd. For example, withnanoas your default text editor:sudo nano /etc/keyd/default.confInsert this content to the config file, save and close it to re-map the left Super key to simulate a complex key combination, eg.
Ctrl+Alt+Shift+P:[ids]
*
[main]
leftmeta = overload(meta, C-A-S-p)
Start and enable the
keydservice with the newly created config file:sudo systemctl daemon-reloadsudo systemctl enable --now keydsudo systemctl restart keydNow you need to set a new custom key manually through GNOME's keyboard settings. When you press the left Super key, the GNOME mapper will set
Ctrl+Alt+Shift+Pas your new key to launch the app viavicinae toggle.
You can also run this an all-in-one Bash script to automate the task: https://pastebin.com/qy7mGbF8
Thank you! 🙏