Активация звука USB с помощью сценария /etc/pm/sleep.d, который запускает команды pacmd

Ubuntu досадно переключает устройство на аудиовход и вывод с моей USB-гарнитуры на встроенную звуковую карту каждый раз, когда я выхожу из системы, спящий или выключая компьютер. Это происходит, даже если «USB-гарнитура с аналоговым стерео» имеет параметр «Установить как резервный», выбранный в PulseAudio.

Я решил запустить скрипт каждый раз, когда мой компьютер запускает или оттаивает. Получение команд для запуска при входе в систему очень просто: я просто помещаю их в файл .zshrc. Но у меня возникают проблемы с их запуском при пробуждении от спячки. Вот мой сценарий, который я ввел /etc/pm/sleep.d:

#!/bin/bash case "$1" in thaw|resume) pacmd set-default-sink "alsa_output.usb-Sennheiser_Communications_Sennheiser_USB_Headset-00-Headset.analog-stereo" pacmd set-default-source "alsa_output.usb-Sennheiser_Communications_Sennheiser_USB_Headset-00-Headset.analog-stereo.monitor" ;; esac 

Проблема в том, что он не выполняет команды pacmd при оттаивании (я не приостанавливаю свой компьютер, потому что он зависает, когда он возобновляется). Я пробовал множество вариантов скрипта, включая включение команд pacmd за пределы оператора case, чтобы они (казалось бы) выполнялись независимо, но безрезультатно.

Когда я добавляю другие команды (такие как gvim ) в скрипт и спящий режим и оттаиваю свой компьютер, они также не выполняются. Однако команды выполняются, если они находятся вне инструкции, и я запускаю сценарий в командной строке. Если я помещаю команды в скрипт в /etc/pm/power.d за пределами оператора case, они выполняются дважды.