gitmyhub

lumi

C ★ 21 updated 5d ago

A lightweight Wayland dock written in C++

A lightweight app dock for Linux Wayland window managers like Sway and Hyprland that shows your chosen app icons along the bottom of the screen with a running-app indicator and smooth hover animations.

CCMakeWaylandwlrootsYAMLsetup: moderatecomplexity 3/5

Lumi is a dock for Linux desktops that use the Wayland display system. A dock is the row of app icons that typically sits along an edge of your screen, similar to what you see on macOS. Lumi positions itself along the bottom of the screen and shows icons for the apps you choose, with a small dot beneath any app that is currently running.

The dock is built specifically for window managers that use a library called wlroots, which includes popular Wayland setups like Sway and Hyprland. It will not work on other types of Linux desktop environments such as GNOME or KDE, and it does not run on Windows or macOS.

Configuration is done through a single YAML file stored in your home config folder. You list which app icons appear in the dock, set corner rounding, padding, icon size, spacing between icons, and the animation behavior when you hover your mouse over an icon. The hover animation scales the icon up and lifts it slightly, with settings to control how large it gets and how far it rises. All values have defaults, so you only need to specify what you want to change.

Building the project from source requires CMake, a C++23-capable compiler, and a handful of Wayland development libraries. The build process is two commands. Once built, you run the resulting binary and it reads your config file automatically.

The project is early-stage and small in scope. It focuses narrowly on being a lightweight dock rather than a full panel or taskbar, and the README does not mention features like system tray support, clock widgets, or app launchers beyond what icon clicking provides.

Where it fits