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.
[Quattro] Audio picker cannot switch between HDMI/DP profiles on one GPU card
Reported by ClGratton · filed Aug 28, 2026 · open at source
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?
- AreaOutside the audited area· Decided by agents · verified
- 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?
- Decided by agents and verified by a second, independent agent — see the decision.
Original report
System details
AMD desktop, NVIDIA GeForce RTX 3080 Ti (NVIDIA 610.57.04), two DisplayPort monitors, Omarchy 4.0.1-1, kernel 7.1.9-arch1-2, Hyprland 0.56.2-1, PipeWire 1.6.8-1, WirePlumber 0.5.15-1.
What's wrong?
The Quattro audio output picker cannot switch between two HDMI/DisplayPort audio outputs when ALSA exposes them as mutually exclusive profiles of the same GPU audio card.
Both connected monitors are detected and both profiles are available:
Card: alsa_card.pci-0000_29_00.1
output:hdmi-stereo: available: yes
output:hdmi-stereo-extra1: available: yes
Active Profile: output:hdmi-stereo
hdmi-output-0: available
device.product.name = "M27T6"
Part of profile: output:hdmi-stereo
hdmi-output-1: available
device.product.name = "H27T7P-2"
Part of profile: output:hdmi-stereo-extra1However, wpctl status contains only the sink belonging to the active profile:
Sinks:
* M27T6The Omarchy audio panel consequently shows only that one row. Clicking it has no visible effect because it is already the default, while the second available monitor cannot be selected. Changing the ALSA card profile manually makes the other sink appear and the first disappear.
Steps to reproduce
- Connect two audio-capable HDMI/DisplayPort monitors to one GPU.
- Confirm that
pactl list cardsreports two available profiles on the same card, such asoutput:hdmi-stereoandoutput:hdmi-stereo-extra1. - Open the Omarchy audio panel.
- Observe that only the sink from the currently active card profile is offered.
- Try to select the other monitor; it is absent from the picker.
Expected
The output picker should represent all available playback profiles/ports and activate the selected card profile when necessary, so either connected monitor can be chosen.
Actual
The picker enumerates only current Pipewire.nodes sinks. With ACP-style mutually exclusive profiles, that means it can see only the active monitor and cannot perform a profile switch.
Related re-enumeration symptom
After a hibernate/DisplayPort link reinitialization, the active sink appeared in the panel as the generic HDMI 0 even though the card-port properties and kernel ELD already contained M27T6. A local WirePlumber naming rule corrected the label, but it does not address the missing profile switching.
This is related to the DPMS/profile churn described in #8290, but distinct: #8290 concerns automatic profile/default-sink changes when outputs become unavailable; this report concerns the audio panel being unable to select another profile even while both ports/profiles are available.
View raw text
## System details AMD desktop, NVIDIA GeForce RTX 3080 Ti (NVIDIA 610.57.04), two DisplayPort monitors, Omarchy 4.0.1-1, kernel 7.1.9-arch1-2, Hyprland 0.56.2-1, PipeWire 1.6.8-1, WirePlumber 0.5.15-1. ## What's wrong? The Quattro audio output picker cannot switch between two HDMI/DisplayPort audio outputs when ALSA exposes them as mutually exclusive profiles of the same GPU audio card. Both connected monitors are detected and both profiles are available: ```text Card: alsa_card.pci-0000_29_00.1 output:hdmi-stereo: available: yes output:hdmi-stereo-extra1: available: yes Active Profile: output:hdmi-stereo hdmi-output-0: available device.product.name = "M27T6" Part of profile: output:hdmi-stereo hdmi-output-1: available device.product.name = "H27T7P-2" Part of profile: output:hdmi-stereo-extra1 ``` However, `wpctl status` contains only the sink belonging to the active profile: ```text Sinks: * M27T6 ``` The Omarchy audio panel consequently shows only that one row. Clicking it has no visible effect because it is already the default, while the second available monitor cannot be selected. Changing the ALSA card profile manually makes the other sink appear and the first disappear. ### Steps to reproduce 1. Connect two audio-capable HDMI/DisplayPort monitors to one GPU. 2. Confirm that `pactl list cards` reports two available profiles on the same card, such as `output:hdmi-stereo` and `output:hdmi-stereo-extra1`. 3. Open the Omarchy audio panel. 4. Observe that only the sink from the currently active card profile is offered. 5. Try to select the other monitor; it is absent from the picker. ### Expected The output picker should represent all available playback profiles/ports and activate the selected card profile when necessary, so either connected monitor can be chosen. ### Actual The picker enumerates only current `Pipewire.nodes` sinks. With ACP-style mutually exclusive profiles, that means it can see only the active monitor and cannot perform a profile switch. ### Related re-enumeration symptom After a hibernate/DisplayPort link reinitialization, the active sink appeared in the panel as the generic `HDMI 0` even though the card-port properties and kernel ELD already contained `M27T6`. A local WirePlumber naming rule corrected the label, but it does not address the missing profile switching. This is related to the DPMS/profile churn described in #8290, but distinct: #8290 concerns automatic profile/default-sink changes when outputs become unavailable; this report concerns the audio panel being unable to select another profile even while both ports/profiles are available.
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.
- Out of scopeDecided by agents · verified · 2026-10-10 00:05 UTC
- Out of scopeDecided by agents · verified · 2026-10-09 09:46 UTC · withdrawn