Proof Portal
Omarchy
ProbeLabs65 findings · 95 requirementsA proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.
audio panel: HDMI output hidden when analog profile active, can't switch without pactl
Reported by sbalbalosa · filed Oct 2, 2026Closed upstream on 2026-10-03 by its own reporter sbalbalosa, as a duplicate of #8789 (R-1302). GitHub close reason: completed.
At a glance
- 1 · What is claimed?
- Only the report text below — no validator has restated it as checkable claims yet.
- 2 · What does it affect?
- Not yet mapped to any requirement or component.
- 3 · Is it reproducible?
- No validation has been run yet.
- 4 · What remains unclear?
- Not validated yet: no claims, no reproducer.
- 5 · What happens next?
- Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. No decision has been recorded yet.
Original report
What happened
Plugging an HDMI/DP audio device (RayNeo Air 4 Pro AR glasses via DP alt-mode, seen as DP-2 SmartGlasses) shows video but no audio option in the top-right Audio panel. PipeWire only exposes one sink at a time, so the panel lists a single output.
Root cause is the interaction of two generic layers, not the glasses:
- Intel HDA ACP exposes output:analog-stereo OR output:hdmi-stereo exclusively (one sink at a time).
- WirePlumber upstream forces api.acp.auto-profile=false + auto-port=false (wireplumber/scripts/monitors/alsa.lua:33-34), so no auto-switch on plug/unplug.
- omarchy.audio Panel.qml candidateSinks lists PipeWire sinks only — there is no card-profile picker. omarchy audio output switch / set default / sink availability all operate on sinks, not profiles.
Workaround requires terminal:
pactl set-card-profile alsa_card.pci-0000_00_1f.3 output:hdmi-stereo+input:analog-stereoAfter unplug the system stays stuck on the HDMI profile with no sound (speakers hidden) until manually switched back to output:analog-stereo+input:analog-stereo.
What was expected
- Audio panel lists both local outputs (Speakers + HDMI/DP when its port is
available), one click switches profile + default sink. - Unplug auto-reverts to speakers (or at least offers both), like GNOME/Windows.
omarchy audio output switchcycles profiles, not just active sinks.
Steps to reproduce
- On Intel HDA laptop (e.g. HDA Intel PCH + Realtek ALC3204), note panel shows
Built-in Audio Analog Stereoonly. - Plug HDMI/DP audio device (monitor/TV/AR glasses).
aplay -lshowsHDMI 0 [SmartGlasses],pactl list cardsshowshdmi-output-0: available [PCM 2ch], butpactl list sinksstill shows only analog until profile is manually changed. - Open top-right Audio panel — no HDMI entry.
pactl set-card-profile ... output:hdmi-stereo+input:analog-stereo→ HDMI sink appears, analog disappears.- Unplug → stays on HDMI profile, no sound.
System details
- Omarchy 4.0.4-1, PipeWire 1.6.8, WirePlumber (alsa.lua auto-profile=false)
- Card:
alsa_card.pci-0000_00_1f.3 [HDA Intel PCH, Realtek ALC3204, 8086:a0c8 500 Series] Active Profile: output:hdmi-stereo+input:analog-stereo(after manual switch)hdmi-output-0: available [SmartGlasses PCM 2ch]/analog-output-speaker: availability unknown(mutually exclusive profiles)- Monitor:
DP-2 Technical Concepts Ltd SmartGlasses 1920x1080@60+eDP-1 LG Display(disabled/internal) Default Sink: alsa_output.pci-0000_00_1f.3.hdmi-stereo
Full pactl list cards / pactl info (username/host/cookie redacted) available on request. No MAC/IP/serial in logs (glasses serial is trivial 0x00000011).
Related
- #12489 lists each plugged-in jack of a multi-port sink — same UX pattern needed here but for card profiles (e.g. new
omarchy-audio-output-profilespolled alongside sink-availability,profile settaking card+profile). - #12231, #12886, #13388, #13758/#13775 — audio panel output/input listing gaps.
- #1963 (Dell U3818DW HDMI via USB-C), #1868 — same HDA/HDMI class on other hardware. This is generic HDA, not RayNeo-specific.
Suggested fix
- New
omarchy audio profile list --json(frompactl -f json list cards) +omarchy audio profile set <card> <profile>(set-card-profile + move streams + set-default + OSD). - Panel
OUTPUTsection lists available profiles/ports even when inactive, click switches (pattern from #12489). - Optional: user WirePlumber drop-in to re-enable
api.acp.auto-profile=truefor auto-revert, or handle in shell.
View raw text
## What happened Plugging an HDMI/DP audio device (RayNeo Air 4 Pro AR glasses via DP alt-mode, seen as `DP-2 SmartGlasses`) shows video but no audio option in the top-right Audio panel. PipeWire only exposes one sink at a time, so the panel lists a single output. Root cause is the interaction of two generic layers, not the glasses: - Intel HDA ACP exposes `output:analog-stereo` OR `output:hdmi-stereo` exclusively (one sink at a time). - WirePlumber upstream forces `api.acp.auto-profile=false` + `auto-port=false` (`wireplumber/scripts/monitors/alsa.lua:33-34`), so no auto-switch on plug/unplug. - `omarchy.audio Panel.qml candidateSinks` lists PipeWire sinks only — there is no card-profile picker. `omarchy audio output switch / set default / sink availability` all operate on sinks, not profiles. Workaround requires terminal: ``` pactl set-card-profile alsa_card.pci-0000_00_1f.3 output:hdmi-stereo+input:analog-stereo ``` After unplug the system stays stuck on the HDMI profile with no sound (speakers hidden) until manually switched back to `output:analog-stereo+input:analog-stereo`. ## What was expected - Audio panel lists both local outputs (Speakers + HDMI/DP when its port is `available`), one click switches profile + default sink. - Unplug auto-reverts to speakers (or at least offers both), like GNOME/Windows. - `omarchy audio output switch` cycles profiles, not just active sinks. ## Steps to reproduce 1. On Intel HDA laptop (e.g. HDA Intel PCH + Realtek ALC3204), note panel shows `Built-in Audio Analog Stereo` only. 2. Plug HDMI/DP audio device (monitor/TV/AR glasses). `aplay -l` shows `HDMI 0 [SmartGlasses]`, `pactl list cards` shows `hdmi-output-0: available [PCM 2ch]`, but `pactl list sinks` still shows only analog until profile is manually changed. 3. Open top-right Audio panel — no HDMI entry. 4. `pactl set-card-profile ... output:hdmi-stereo+input:analog-stereo` → HDMI sink appears, analog disappears. 5. Unplug → stays on HDMI profile, no sound. ## System details - Omarchy 4.0.4-1, PipeWire 1.6.8, WirePlumber (alsa.lua auto-profile=false) - Card: `alsa_card.pci-0000_00_1f.3 [HDA Intel PCH, Realtek ALC3204, 8086:a0c8 500 Series]` - `Active Profile: output:hdmi-stereo+input:analog-stereo` (after manual switch) - `hdmi-output-0: available [SmartGlasses PCM 2ch]` / `analog-output-speaker: availability unknown` (mutually exclusive profiles) - Monitor: `DP-2 Technical Concepts Ltd SmartGlasses 1920x1080@60` + `eDP-1 LG Display` (disabled/internal) - `Default Sink: alsa_output.pci-0000_00_1f.3.hdmi-stereo` Full `pactl list cards` / `pactl info` (username/host/cookie redacted) available on request. No MAC/IP/serial in logs (glasses serial is trivial `0x00000011`). ## Related - #12489 lists each plugged-in jack of a multi-port sink — same UX pattern needed here but for card *profiles* (e.g. new `omarchy-audio-output-profiles` polled alongside sink-availability, `profile set` taking card+profile). - #12231, #12886, #13388, #13758/#13775 — audio panel output/input listing gaps. - #1963 (Dell U3818DW HDMI via USB-C), #1868 — same HDA/HDMI class on other hardware. This is generic HDA, not RayNeo-specific. ## Suggested fix 1. New `omarchy audio profile list --json` (from `pactl -f json list cards`) + `omarchy audio profile set <card> <profile>` (set-card-profile + move streams + set-default + OSD). 2. Panel `OUTPUT` section lists available profiles/ports even when inactive, click switches (pattern from #12489). 3. Optional: user WirePlumber drop-in to re-enable `api.acp.auto-profile=true` for auto-revert, or handle in shell.
Validation
Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.
Linked
Not linked to any known issue, other report or change yet.
Decision
Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.
No decision has been recorded yet.