feat(desktop): add the rofi launcher (task 0024) #16
Reference in New Issue
Block a user
Delete Branch "task-0024-rofi-launcher"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Task:
.claude/tasks/0024-rofi-launcher.mdSummary
Adds a rofi launcher module to the desktop group (enabled by the aggregator).
rofi -show drun,modi = "drun", bound onSuper+R. Per the operator's direction this is application-launch only — binary-run, window-switch, math (rofi-calc) and emoji (rofi-emoji) were dropped, and the two plugins removed, to keep the prompt fast and uncluttered. This narrows the task/spec "search-everything launcher" to a plain launcher (task criterion 2 marked[-]); it's reversible — any mode or plugin can be added back. Icons are off (show-icons = false) since per-entry icon resolution is drun's main per-launch cost.rofi -dmenu, bound onSuper+Shift+X(pairing with lock onSuper+X).rofi -dmenuinvocation inherits the Stylix Nord theme, so later utility menus (clipboard, etc.) look uniform for free.settings.bind, which concatenates with the compositor's own binds in the singlehyprland.conf— each command sits next to its binding and is referenced by store path.layersIn/fadeLayersIn), a touch quicker than the window animation, so the launcher fades in briskly rather than snapping into place.nix flake checkpasses (neogaia system toplevel builds green).Deviations
rofi-waylandno longer exists — merged intopkgs.rofi(2.0.0), which is Wayland-capable; the module uses that.window-rewriteicon mapping: rofi renders as a layer-shell overlay, not a workspace window, so the convention doesn't apply.Review
Risk
Overall: Medium
mkDefaultline, no existing callers touched.nix flake checkproves it builds, but launcher binds and power-menu logic are untestable headless.loginctl,systemctl suspend/reboot/poweroff); a mis-wired case could log out or power off.case.Spec / Standards
Super+Shift+X) is the operator's choice, pairing with lock onSuper+X; the parent spec's keybind table has no power-menu key of its own.— Claude
e6c63d98dato7d9a0dae36