★ A simple launcher panel for Wayland desktops ★
Fix typo in man page
Update to newer librsvg version
Deprecate non-sourcehut interactions



You can also use your local clone with git send-email.



LavaLauncher is a simple launcher panel for Wayland desktops.

It displays a dynamically sized bar with user defined buttons. Buttons consist of an image, which is displayed as the button icon on the bar, and at least one shell command, which is executed when the user activates the button.

Buttons can be activated with pointer and touch events.

A single LavaLauncher instance can provide multiple such bars, across multiple outputs.

The Wayland compositor must implement the Layer-Shell and XDG-Output for LavaLauncher to work.

Beware: Unlike applications launchers which are similar in visual design to LavaLauncher, which are often called "docks", LavaLauncher does not care about .desktop files or icon themes nor does it keep track running applications. Instead, LavaLaunchers approach of manually defined buttons is considerably more flexible: You could have buttons not just for launching applications, but for practically anything you could do in your shell, like for ejecting your optical drive, rotating your screen, sending your cat an email, playing a funny sound, muting all audio, toggling your lamps and a lot more. Be creative!

LavaLauncher is opinionated, yet remains configurable. The configuration syntax is documented in the man page.

LavaLauncher has been successfully tested on sway, wayfire (Wayfire currently does not respect subsurfaces ordering used by LavaLauncher), river and hikari.



LavaLauncher has been packaged into a few software repositories.

Packaging status

Many thanks to the maintainers of these packages!


LavaLauncher depends on Wayland, Wayland protocols, xkbcommon and Cairo. To compile LavaLauncher with SVG image support, it additionally depends on librsvg.

To build this program you will need a C compiler, the meson & ninja build system and scdoc to generate the manpage.

git clone https://git.sr.ht/~leon_plickat/lavalauncher
cd lavalauncher
meson build
ninja -C build
sudo ninja -C build install


The mailinglist is for bug reports, contributions, feedback and getting help.


If you found this repository on GitHub, or any other forge I have mirrors of my projects on, note that I will not respond to messages from that forges issue system. Use the mailing list.


Contributions are welcome! Read CONTRIBUTING.md to find out how you can contribute. Do not be afraid, it is really not that complicated.


LavaLauncher is licensed under the GPLv3.

The contents of the protocol directory are licensed differently. Please see the header of the files for more information.


Leon Plickat leonhenrik.plickat@stud.uni-goettingen.de