Я не смог заставить его работать сразу же на Ubuntu 12.10 с использованием среды рабочего стола linux.
Это было исправлено просто добавлением кавычек и удалением запятой (и добавлением моего имени пользователя):
#!/bin/bash
MICMUTE=/sys/devices/platform/thinkpad_acpi/leds/tpacpi::micmute/brightness
ID='"Internal Mic"'
USERNAME="" #put your username here
if amixer sget "$ID"ntenter code herernal Mic" 0 | grep '\[on\]' ; then
amixer sset "$ID" 0 toggle
#echo "0 blink" > /proc/acpi/ibm/led #related to blinking power
echo 1 > $MICMUTE
su $USERNAME -c 'DISPLAY=":0.0" notify-send -t 50 \
-i microphone-sensitivity-muted-symbolic "Mic MUTED"'
echo "MUTE ON"
else
amixer sset "$ID" 0 toggle
su $USERNAME -c 'DISPLAY=":0.0" notify-send -t 50 \
-i microphone-sensitivity-high-symbolic "Mic ON"'
#echo "0 on" > /proc/acpi/ibm/led
echo 0 > $MICMUTE
echo "MUTE OFF"
fi
а затем следовал вашим шагам в составлении thinkpad_acpi.
Все на Thinkpad T520 с NVS 4200M, Ubuntu 12.10. Еще не перезагружен, но я протестировал с шагом теста, который вы обрисовали в общих чертах, и он работает с включением и выключением индикатора отключения звука и его отключением (с уведомлением). Кажется, что прыжки с пистолетом работают нормально. Спасибо.
Хорошо перезагружен, сам скрипт работает нормально, отключая и отключая звук, но я не установил пропатченный thinkpad_acpi ... упс
Ладно, перезагрузите снова после правильной установки на этот раз, и светодиод также загорается. Вероятно, должен быть сценарий запуска, чтобы проверить, отключен ли микрофон или нет, и включить / выключить свет, поскольку текущая настройка будет включать / выключать свет только при нажатии кнопки.
Чтобы свет показывал, был ли он выключен или нет при запуске, а не при первом нажатии кнопки, я просто сохранил:
#!/bin/bash
MICMUTE=/sys/devices/platform/thinkpad_acpi/leds/tpacpi::micmute/brightness
if amixer sget "Internal Mic" 0 | grep '\[on\]' ; then
echo 0 > $MICMUTE
elif amixer sget "Internal Mic" 0 | grep '\[off\]' ; then
echo 1 > $MICMUTE
else
echo "No Mic Detected";
fi
Дал разрешение на выполнение
sudo chmod +x /etc/init.d/lenovo-mic-check
Как lenovo-mic-check в /etc/init.d/ и затем запустил:
sudo update-rc.d lenovo-mic-check defauts 98 02
Также не забудьте скопировать в /etc/pm/sleep.d/
sudo cp /etc/init.d/lenovo-mic-check /etc/pm/sleep.d/lenovo-mic-check
Теперь, если я перезагружаю компьютер, индикатор горит, ПРИМЕЧАНИЕ: второй, если это может быть просто другое.