bemenu vs Wofi
bemenu
github.comWofi
github.comSide by side
| Figure | bemenu | Wofi |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · App Launcher Software | 8.4 (#8) | 6.9 (#37) |
| Spec score · App launchers | 8.4 (#10) | 7.1 (#34) |
| Spec score · App Launchers | 8.3 (#12) | 7.0 (#37) |
| Build requirements | Building requires a C compiler, and scdoc is needed to generate the man page. | Building requires PkgConf, Wayland, GLib2, GObject, GTK3, and either CMake or Meson. |
| Customization | Environment variables can set options, choose a backend, select renderer paths, and override rendering scale. | Wofi is described as highly customizable, with CSS styling and optional configuration, CSS, and colors files. |
| Integration | The README lists pinentry-bemenu as a project using bemenu. | Wofi is designed for wlroots and uses the wlr-layer-shell protocol; without that protocol or outside Wayland it must be run with --normal-window or it will crash. |
| Purpose | bemenu is a dynamic menu library and client program inspired by dmenu. | Wofi is a launcher and menu program for wlroots based Wayland compositors such as sway. |
Plans
In their own words
bemenu
bemenu is a dynamic menu library and client program inspired by dmenu. It provides the bemenu and bemenu-run clients, with build targets for curses, X11, and Wayland backends. Users can configure environment variables for options, backend selection, renderer paths, and rendering scale. The project documents default keyboard bindings and an optional Vim-style mode enabled with --binding vim. Wayland use depends on a compositor implementing the wlr-layer-shell protocol, typically a wlroots-based compositor. Clipboard pasting uses wl-paste and xclip at runtime, in that order. Building requires a C compiler, and scdoc is needed to generate the man page. The project also documents macOS build steps using Homebrew prerequisites and a build-osx.sh flow; its provided Nix expression installs only the curses backend. The client program and sources other than the library and bindings use GNU GPLv3 or later, while the library and bindings use GNU LGPLv3 or later. The project lists pinentry-bemenu as an integration. bemenu is free and open source, with no paid plans or usage limits stated.