Orion/2. Areas/Home Personal/knowledge/hyprctl-dispatch-lua-shim-syntax.md
Avi a66996ac10 Orion vault — clean initial history
Knowledge vault (Orion/PARA) migrated from the pre-Orion 484vault on
2026-10-01. Deliberately orphaned: prior history contained a plaintext
password and stays local-only on branch archive/pre-boilerplate-history.
Secrets and live Hermes state are gitignored.
2026-10-02 08:34:48 -05:00

22 lines
1.1 KiB
Markdown

# hyprctl dispatch fails with classic syntax (Lua shim on this box)
**Date:** 2026-09-13 · **Machine:** Framework Laptop (Omarchy, Hyprland)
## Symptom
`hyprctl dispatch focuswindow pid:N`, `bringactivetop`, etc. silently fail or error — the usual Hyprland dispatch verbs don't resolve.
## Diagnosis path
1. `which hyprctl` / inspect the binary: on this machine `hyprctl` is wrapped in a **Lua shim** that only accepts Lua-form dispatches.
2. Classic verb syntax will never work here regardless of quoting.
## Fix
Use the Lua dispatch forms:
- Focus by pid: `hyprctl dispatch "hl.dsp.focus({window='pid:N'})"`
- Bring to top: `hyprctl dispatch "hl.dsp.window.bring_to_top(...)"`
- Focus workspace: `hyprctl dispatch "hl.dsp.focus({workspace='N'})"`
## Notes
- Related quirk: **omafiles** is effectively single-instance via a shared `~/.local/state/omafiles/session.toml` — to run a test instance side-by-side, give it an isolated `XDG_STATE_HOME`.
- F2-rename feature for omafiles was built at `~/Projects/omafiles` (release binary ready; installing over `/usr/bin/omafiles` needs `sudo cp`).
Related: [[Omarchy Commands]]