Категории

среда, 30 января 2013 г.

Ubuntu Gnome-Terminal - включение beep enable system-beep, audible ping, bell, подавать гудок.

Первым делом необходимо установить утилиту beep:
Ubuntu~$ sudo apt-get install beep
Затем нужно разрешить загрузку модуля pcspkr:
Ubuntu~$ sudo sed -i'' -e 's/blacklist pcspkr/#blacklist pcspkr/' /etc/modprobe.d/blacklist.conf
Либо, если Beep поддерживает звуковая карта ноутбука, попробовать активировать эту функцию:
Ubuntu~$ cat >>/etc/modprobe.d/alsa-base.conf<<_EOF

#Enable Beep
#https://bugs.launchpad.net/ubuntu/+source/beep/+bug/144022
options snd-hda-intel power_save=10 power_save_controller=Y index=0 beep_mode=1
_EOF
Для включения сигналов в gnome-terminal нужно включить в metacity параметр audible_bell и в самом gnome-terminal проверить наличие галочки "Подавать гудок".
Я сделал это через консоль:
Ubuntu~$ gconftool-2 --set --type bool "/apps/gnome-terminal/profiles/Default/silent_bell" "false"
Ubuntu~$ gconftool-2 --set --type string "/apps/metacity/general/audible_bell" "on"
Ubuntu~$ gsettings set org.gnome.desktop.wm.preferences audible-bell 'true'
Ubuntu~$ gconftool-2 --set --type string "/desktop/gnome/peripherals/keyboard/bell_mode" "on"
Ubuntu~$ gsettings set org.gnome.settings-daemon.peripherals.keyboard bell-mode 'on'
Проверяем:
Ubuntu~$ echo -e "\a"
Ubuntu~$ echo -e '\a'
Ubuntu~$ ping -a ya.ru
У меня после этих манипуляций был слышен звук, как и в системной консоли.
Регулировать громкость сигнала можно через alsamixer в консоли - параметр Beep, у меня он почему-то был почти около нуля и я добавил громкости.
Но радоваться рано, после перезагрузки гудок пропал. Выяснилось, что если отключить гудок и включить его снова, то все работает, но до следующей перезагрузки :(
Ubuntu~$ gsettings set org.gnome.desktop.wm.preferences audible-bell 'false'
Ubuntu~$ gsettings set org.gnome.desktop.wm.preferences audible-bell 'true'
Ubuntu~$ echo -e '\a'
Немного подумав, сделал такой костыль:
Ubuntu~$ cat >>~/.bashrc<<_EOF
if [ -n $DISPLAY ]; then
    gsettings set org.gnome.desktop.wm.preferences audible-bell 'false'
    gsettings set org.gnome.desktop.wm.preferences audible-bell 'true'
fi
_EOF
Буду крайне признателен, если кто-то подскажет более изящное решение.

P.S. Может кому пригодится, приведу еще дополнительные опции из gconftool и gsettings:
Ubuntu~$ gsettings list-recursively | grep bell
org.gnome.desktop.wm.preferences audible-bell true
org.gnome.desktop.wm.preferences visual-bell false
org.gnome.desktop.wm.preferences visual-bell-type 'fullscreen-flash'
org.gnome.settings-daemon.peripherals.keyboard bell-custom-file ''
org.gnome.settings-daemon.peripherals.keyboard bell-duration 100
org.gnome.settings-daemon.peripherals.keyboard bell-mode 'on'
org.gnome.settings-daemon.peripherals.keyboard bell-pitch 400

Ubuntu~$ gconftool -R /desktop | grep -B4 bell
  /desktop/gnome/peripherals:
   /desktop/gnome/peripherals/keyboard:
    repeat = true
    delay = 500
    bell_mode = off
    bell_custom_file = (значение не установлено)
    remember_numlock_state = true
    click_volume = 0
    click = true
    bell_pitch = 400
    bell_duration = 100

Ubuntu~$ gconftool -R /apps | grep -B20 bell

Ссылки по теме:
1. Comment 50 for bug 486154
2. Trying to ENABLE bell in gnome-terminal
3. Comment 18 for bug 144022

Комментариев нет:

Отправить комментарий