From bde1537f6e1c1a98c29d8b97294ad6483f13390e Mon Sep 17 00:00:00 2001 From: Sergio Jr Date: Wed, 22 Apr 2026 08:56:15 -0300 Subject: [PATCH] Use wpctl instead of pactl to switch default audio sink (#5236) 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) --- bin/omarchy-cmd-audio-switch | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bin/omarchy-cmd-audio-switch b/bin/omarchy-cmd-audio-switch index a0d7ef85..7d1ea015 100755 --- a/bin/omarchy-cmd-audio-switch +++ b/bin/omarchy-cmd-audio-switch @@ -53,7 +53,8 @@ fi next_sink_volume_icon="sink-volume-${icon_state}-symbolic" if [[ $next_sink_name != $current_sink_name ]]; then - pactl set-default-sink "$next_sink_name" + next_sink_wpid=$(echo "$next_sink" | jq -r '.properties."object.id"') + wpctl set-default "$next_sink_wpid" fi omarchy-swayosd-client \