Официально закончилось ли распространение раздаточных пакетов?

В интересах людей, которые спотыкаются на этот вопрос - решение Салема почти сработало для меня в 13.04, я закончил тем, что собирал кусочки со всего Интернета, я думаю, что для меня был нарушитель отсутствия переменных окружения PULSE_SERVER

Вот мое полное решение, которое в основном повторяет решение Салема с несколькими недостающими частями. Я также изменил его как сценарий оболочки (несмотря на мою любовь к Python), потому что сначала я испугался, что мой скрипт Python запущен в проблемные пути импорта:

(то же, что и у Salem's ответ) Создайте файл /etc/udev/rules.d/hdmi_sound.rules как root с содержимым:

SUBSYSTEM=="drm", ACTION=="change", RUN+="/usr/local/bin/hdmi_sound_toggle"

Создайте файл /usr/local/bin/hdmi_sound_toggle как root с содержимым:

#!/bin/sh
USER_NAME=`who | grep "(:0)" | cut -f 1 -d ' '`
USER_ID=`id -u $USER_NAME`
HDMI_STATUS=`cat /sys/class/drm/card0/*HDMI*/status`

export PULSE_SERVER="unix:/run/user/"$USER_ID"/pulse/native"

if [ $HDMI_STATUS = "connected" ]
then
    sudo -u $USER_NAME pactl --server $PULSE_SERVER set-card-profile 0 output:hdmi-stereo+input:analog-stereo
else
    sudo -u $USER_NAME pactl --server $PULSE_SERVER set-card-profile 0 output:analog-stereo+input:analog-stereo
fi

Затем сделайте его исполняемым с chmod 0755 /usr/local/bin/hdmi_sound_toggle

Я попытался сделать этот сценарий как можно более общим, но вам все равно может потребоваться изменить некоторые строки, такие как путь к файлу HDMI_STATUS или используемые профили. Вы можете просмотреть список профилей, запустив pactl list cards и посмотрев в разделе «Профили».

Обратите внимание, что сценарий не удался для меня, когда я удалил ключевое слово «экспорт» при установке PULSE_SERVER, я думаю, pactl ищет env variable

Не забудьте перезагрузить свои правила udev: sudo udevadm control --reload-rules

Обновление этого скрипта обновлено для 14.04. До этого вы использовали бы USER_NAME вместо USER_ID везде

1
задан 19 July 2014 в 05:22

0 ответов

Другие вопросы по тегам:

Похожие вопросы: