pactl set-default-sink only updates PipeWire's default.audio.sink
metadata, but WirePlumber immediately overrides it back because
default.configured.audio.sink remains unchanged. wpctl set-default
updates both, making the switch actually persist.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* If on XPS, enable XPS mute mic key with LED and fallback to original mic mute flow
* fix hardcode of alsa card 0 to resolved id
* Extract omarchy-hyprland-monitor-focused
* Extract dedicated xps mute script
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>
Look up device.id first for Bluetooth friendly names, falling back to
object.id for non-Bluetooth devices. Also fix conditionals to use [[ ]].
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* add visual feedback for super + mute
- show visual feedback (device name and volume icon) when super+mute is pressed
- avoid reassigning the sink when only one is available, since this prevents devices (e.g. headphones) from regaining audio after reconnect
* cleanup
* changes needed
* fix: remove hardcoded channel reference
* Add SUPER + MUTE for audio output switching
* Fix migration bc stupidness
* Simplify implementation and ensure the new sink is not muted
---------
Co-authored-by: David Heinemeier Hansson <david@hey.com>