Skip to content

Installing Kando on Linux

banner

On Linux, you can either install Kando from your package manager, or via any of the pre-packaged binaries from GitHub releases.

Supported Desktop Environments

Implementing a menu like Kando for various desktop environments is not exactly easy. Things like getting the mouse position before opening a window, simulating key presses, or getting the name of the currently focused application window may have to be implemented differently.

EnvironmentStatusNotes
GNOME / X11βœ…
GNOME / Waylandβœ…Requires adapter GNOME Shell extension which provides a DBus interface for Kando to communicate with.
KDE / X11βœ…
KDE / Waylandβœ…Works both on Plasma 5 and Plasma 6. See below for how to bind global shortcuts.
Hyprlandβœ…See below for the required configs.
Cinnamonβœ…
XFCEβœ…
MATEβœ…
Budgieβœ…
LXQtβœ…
LXDEβœ…Requires a compositor for the transparency to work.
Openboxβœ…Requires a compositor for the transparency to work.
i3βœ…Requires a compositor for the transparency to work.
duskβœ…Requires a compositor for the transparency to work. See below for the required config.

Installation via a Package Manager

  1. Kando is already available in several package managers.

    Kando is available on Flathub.

    Terminal window
    flatpak install flathub menu.kando.Kando
  2. After the installation, you can start Kando from your application launcher! Not much will happen, as Kando is a tray application and will run in the background.

  3. On most X11 based distributions, you can now press Ctrl + Space to open the example menu!

Installation via a Pre-Packaged Binary

  1. Just head over to the releases page and download a package that fits your distribution.

    On Ubuntu and other Debian-based distributions, you can download the Kando_*_amd64.deb package.

  2. Install the package. The AppImage and Zip Archive packages are standalone and can be run directly. The other packages need to be installed.

    Terminal window
    sudo dpkg -i Kando_*_amd64.deb

    After the installation, you can start Kando from your application launcher! Not much will happen, as Kando is a tray application and will run in the background.

  3. On most X11 based distributions, you can now press Ctrl + Space to open the example menu!

Desktop Specifics

Implementing a menu like Kando on Wayland is not exactly easy. Things like getting the mouse position before opening a window, simulating key presses, or getting the name of the currently focused application window does not work out of the box. Therefore, Kando needs some additional setup on Wayland based desktop environments. There are also some X11 based desktop environments that need some additional setup.

GNOME on Wayland

You will also need to install the 🐚 Kando Integration Extension. Via a D-Bus interface, it provides the name of the currently focused window, and the current mouse pointer position. Furthermore, it allows registering and simulating keyboard shortcuts.

KDE Plasma on Wayland

If you are using Plasma on Wayland, Kando cannot directly bind global shortcuts. Instead, you specify a shortcut ID for each menu in Kando’s menu editor and bind a key combination for this shortcut ID in your system settings. You can bind a shortcut to the shortcut ID under the KWin section in the global shortcuts settings.

Hyprland

You will need some window rules for Kando. Else, the menu will not float above other windows.

~/.config/hypr/hyprland.conf
windowrule = noblur, kando
windowrule = opaque, kando
windowrule = size 100% 100%, kando
windowrule = noborder, kando
windowrule = noanim, kando
windowrule = float, kando
windowrule = pin, kando

Also, Kando cannot directly bind global shortcuts on Hyprland. Instead, you specify a shortcut ID for each menu in Kando’s menu editor and bind a key combination in hyprland.conf. Replace example-menu with the ID of your menu.

~/.config/hypr/hyprland.conf
bind = CTRL, Space, global, kando:example-menu

Dusk

On Dusk, you will have to install and use a compositor like picom or compton to make the transparency work. Also, you will need some window rules for Kando:

dusk/config.def.h
static const Rule clientrules[] = {
{ .class = "kando", .flags = FullScreen }, //kando should be on top of DOCK clientrule
{ .wintype = WTYPE "DESKTOP", .flags = Unmanaged|Lower },
{ .wintype = WTYPE "DOCK", .flags = Unmanaged|Raise },
};

LXDE, i3, Openbox, and others

On some minimal desktop environments, you will have to install and use a compositor like picom or compton to make the transparency work.