Rofi alternatives for Wayland: app launcher, window switcher and picker for Linux

Last updated: August, 2025
Rofi is a popular window switcher, application launcher and dmenu
replacement for Linux. dmenu
was a tiny text-only utility to display a list of lines of text and select one. The dmenu
design follows the Unix philosophy to "do one thing well". Simple!
Rofi took the dmenu
idea and dressed it up with better graphics, displaying more lines, adding icons, and adding support for launching desktop apps. Here we look at options inspired by dmenu
and Rofi that are designed for Wayland, the newer display technology for Linux.
Why is a dmenu tool useful?
dmenu
has a simple design to "pick" any number of things. Here are some things you can do with a tool that works like dmenu:
- Emoji picker with bemoji
- Password picker, with dmenu-lpass or passmenu
- Yubikey TOTP picker, with yubikey-oath-dmenu
- Clipboard picker, with clipman
- Download picker, with dmenufm
- Network connection picker with networkmanger_dmenu
- Qutebrowser history/bookmark picker with dmenu_qutebrowser
- Picking a window, output, or workspace to switch to with swayr
Rofi, with Wayland support
In August, 2025 Rofi released the first 2.0 beta which includes Wayland support. If you like Rofi just the way it is, try this.
Also, if you like to send massive amounts of lines to filter– like more than 50,000– Rofi, Fuzzel and Walker are one of the few options can that start displaying lines piped in immediately, even before all the lines arrive.
Ilia of Regolith
The Regolith project has worked to make a slick desktop environment based first on i3 and later for Sway and Wayland. To do that, they didn't just curate apps and add some config files, they created some new apps to pull things together, and one of those is "Ilia the Desktop Executor":

The screenshot is showing off a unique feature – displaying keybindings as a kind of a cheatsheet. Sway doesn't currently (mid-2024) have the ability to introspect its keybindings so Ilia instead parses a comment format from the config files– it works pretty well! Not shown in the screenshot is "text list mode", which works like dmenu where you can pass in a list of options and select one.
The challenge you may find with Ilia is finding a package for it outside of the Regolith desktop. Regolith is based on Ubuntu, so Ubuntu users will have an easier time trying this.
Fuzzel - the best among minimalist options
There are several options that focus on minimalism and speed: They can launch apps or pick an item from a list like dmenu, and they do it very fast.
For this category of tool, I recommend Fuzzel. It has a number of rofi and dmenu features, good documentation and ongoing maintenance. It's also widely packaged. See my page on Fuzzel for a more in-depth look at that.
Here we'll take a tour of some of the other options.
Wofi – Rofi, but for Wayland?

The name wofi implies that it might be "Wayland + Rofi". Wofi is definitely inspired by Rofi, but it doesn't try to be compatible. Compared to Fuzzel, Wofi has a more complex set of dependencies, using GTK, CSS and Pango to render the output.
A benefit of wofi is Pango (HTML) markup for the entries. By default, wofi doesn't display icons. When it does, the default layout doesn't have much concern for design. Entries at the bottom will get cut off and there's no margin between the icons and the text.
One feature both Wofi and Fuzzel have is the --search
option to pre-fill the search box and immediately filter the results.
For a long time the Wofi has had a banner that says "This project is not being actively maintained." Yet, there has also been a stream of updates to it since then. So the status is unclear. It's clear though that wofi is not implementing some features that competitors have. For exaample, three years ago there was an issue opened to allow using wofi as a single-line prompt, something Rofi can do. The feature was added in Fuzzel, but not yet in Wofi.
If you just run wofi
it tells you it needs a mode, but then doesn't tell you what the possible modes are:
$ wofi
I need a mode, please give me a mode, that's what --show is for
If you follow the advice and use --show
, it still doesn't tell you what the possible modes are:
❯ wofi --show
wofi: option '--show' requires an argument
I need a mode, please give me a mode, that's what --show is for
OK, you try man wofi
to find the possible modes, but they aren't there. It tells you to read man 7 wofi
.
It turns out there are three modes, "run", "drun", and dmenu". If Wofi wanted to provide a better user experience, it could have mentioned this up front, or just started the drun
mode by default. This would have been better:
$ wofi
Missing --show with one of: drun, run, dmenu
Yofi

Yofi supports launching desktop applications, binaries, and has a dmenu mode, which it calls "dialog". Like Fuzzel, Yofi has added some mouse support.
Yofi has very little documentation in the README, no "man" page, and sparse documentation with "yofi help" as well. The documentation is found on its wiki. It would be nice if a minimal man
page or yofi --help
mentioned that. While yofi supports icons, they are not enabled by default.
Unlike Wofi, Fuzzel and Rofi, Yofi does not support showing icons in dmenu ("dialog") mode. A primary feature of Yofi seems to be that it's written in Rust.
Overall, Yofi seems to have fewer features and configuration options than Fuzzel.
tofi

The name tofi is because it's a tiny dynamic menu for Wayland. tofi provides three binaries: tofi
for a dmenu-like behavior tofi-run
for listing binaries and tofi-drun
for displaying desktop apps. It's written in C and does not support icons currently.
tofi
lacks some rofi/dmenu support that alternatives like wofi
and fuzzel
already have. For example, in mid-2024, tofi still had not added support for the -p prompt flag, something wofi and fuzzel have had for at least a couple years.
One visual feature some people like about Tofi is how the list of options to pick is aligned with the right side of the prompt. The effect can be emulated in Fuzzel as long as a single-character prompt is used.
bemenu
Bemenu is a dmenu-inspired tool that can run in the terminal on X11 or Wayland. Bemenu does not have a built-in app launcher and does not support icons, so it's a "no" vote for me. A curious feature of bemenu though, is that it supports both Vim bindings in addition to conventional bindings. If you want to use exactly the same tool as a picker in the terminal, maybe this could be a tool for you.
dmenu-wl / wmenu
Like the classic dmenu, the Wayland-specific dmenu-wl take does not support app launching or icons. It can be used to create a single-line prompt to collect input, but fuzzel can do that too:
echo '' | fuzzel --dmenu --prompt='>: ' -l 0 --anchor bottom
There's an issue open with Fuzzel to simplify that syntax:
The one stand-out feature of dmenu-wl is that it can display a full-width bar across the top or bottom of the monitor, while Fuzzel current expresses the width only in characters. I've opened an issue for Fuzzel to support this feature as well:
There's a fork of dmenu-wl called wmenu that's been updated more recently. Wmenu doesn't attempt to document any advantages it has over dmenu-wl
. I can see that Wmenu is missing the `--prompt-only ` feature that dmenu-wl has. See the wmenu docs here.
If you really want the classic dmenu look, maybe one of these will be a good fit for you.
Walker: Move fast and break things
Walker is a launcher and dmenu tool that was selected as the default launcher for Omarchy, an opinionated Arch+Hyperland setup. It supports an impressive array of built-in modules including one for AI, language translation, emojis, a calculator, and Hyprland keybinds.
If the custom modules appeal to you, it's worth a look. IN July, 2025 there are still frequent breaking changes. When I tried the 0.13.0 release crashed upon launching– not a good sign for QA. In August, 2025 when I returned to try a 1.0 release, walker also panicked and crashed on startup.
No detailed docs are shipped at man walker
, walker --help
or walker help
In August, 2025, the Github README is still far from complete documentation as well. For example, if you want use those shortcuts that appear in the screenshot as "jkl", etc, those are not documented in the README.
Overall, as of mid-2025, Walker looks like a very promising project feature-wise but still appears bleeding edge if you something well-documented and stable.
anyrun
Anyrun is another Wayland launcher project that like Walker took on a very ambitious scope with many plugins, while overlooking adding basic online documentation. As of mid-2025, it had gone into maintenance mode before it produced a first formal release.
A version from git is able to be installed on Arch Linux. As a first impression, when I tried to launch it using a syntax that appeared valid from their help docs, it immediately crashed:
➤ anyrun --x 500 --y 500
thread 'main' panicked at anyrun/src/main.rs:130:47:
Invalid RelativeNum value
If some time has passed, maybe the project will revive.
j4-dmenu-desktop
j4-dmenu-desktop is a bit different than any of the others above because it's not trying to emulate dmenu
or rofi
. Instead, it follows the Unix philosophy of "do one thing well" and is only concerned with processing `.desktop` launcher files to build a menu to select one to launch. It then passes the result to a dmenu-like utility to launch them. It currently doesn't support icons.
If you want to use one of the text-only launchers like dmenu-wl or wmenu, then perhaps pairing them with j4-dmenu-desktop to launch desktop app will be of interest to you.
Summary
Use Rofi's Wayland fork if you want exactly Rofi, use dmenu-wl
for a dmenu
clone, try Ilia or Walker if you multi-function launcher and picker and try Fuzzel if you want a focused launcher and picker for Wayland with a good balance of features, documentation and maintenance.
Enjoy!
Related posts from around the web
- VST also reviewed Wayland app launchers. They ultimately stuck with Rofi, with Fuzzel as a potential future option.
- Awesome Wayland has a list of Wayland launchers.
Comments ()