Надоел звук PC-спикера в XXI веке? Его можно эмулировать ALSA-ой.
Порядок примерно такой (на примере Debian):
- rmmod pcspkr
- blacklist pcspkr -> /etc/modules/blacklist
- Качаем и устанавливаем Fancy Beeper из http://www.carcosa.net/jason/software/beep/
- качаем http://www.funix.org/fr/linux/fichiers/functions в /etc/init.d/functions, если его там еще нет. Мне еще пришлось usleep 100000 заменить на sleep 6 в коде, так как в Дебиане usleep не нашлось. Да и что-то слишком большое время ожидания.
- beepd.init из архива пришлось немного исправить (результат). Устанавливаем в /etc/init.d/beepd.
- sudo update-rc.d beepd defaults 99
- создаем /etc/beepd.conf из двух строчек:
BEEPD="/usr/local/sbin/beepd_aplay.py"
BEEP_SOUND="/usr/share/sounds/beep.wav"
- Имя демона и звукового файла соответственно
- Именно beepd_aplay.py запускает звук через ALSA. Тут можно написать и своего демона. Он должен делать две вещи: опрашивать /dev/beep и играть файл, который ему передается первым параметром
- beepd_aplay.py и требуемый к нему daemonizer.py лежат в исходном архиве. Но код демона все равно потребовал допиливания (результат), чтобы он писал PID-файл под своим именем
- Вроде ничего не забыл. Теперь можно наслаждаться нормальным сигналом и в рельной консоли
- Можно и не мучится сильно, а написать свою обертку. Не так уж тут много.
- PS. Настройка dmix, для одновременного вывода многопоточного звука в ALSA выходит за рамки этого списка