Same class of bug as #63 (DPMS dispatch). The Super+M keybind in hyprland/hyprland.lua has a broken fallback:
hl.bind(mainMod .. " + M", hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch 'hl.dsp.exit()'"))
hl.dsp.exit() is a Hyprland Lua API call — it only works inside hyprland.lua's runtime. Passing it as a string argument to hyprctl dispatch silently does nothing. If hyprshutdown is not installed, Super+M will fail to exit Hyprland.
The correct hyprctl dispatch keyword for exiting is just exit:
-hl.bind(mainMod .. " + M", hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch 'hl.dsp.exit()'"))
+hl.bind(mainMod .. " + M", hl.dsp.exec_cmd("command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch exit"))
Fix is in the open PR.
Same class of bug as #63 (DPMS dispatch). The Super+M keybind in
hyprland/hyprland.luahas a broken fallback:hl.dsp.exit()is a Hyprland Lua API call — it only works insidehyprland.lua's runtime. Passing it as a string argument tohyprctl dispatchsilently does nothing. Ifhyprshutdownis not installed, Super+M will fail to exit Hyprland.The correct
hyprctl dispatchkeyword for exiting is justexit:Fix is in the open PR.