Когда я возобновляю работу своего ноутбука и включаю радиотрей, он снова начинает играть (из буфера), пока я нахожусь на экране блокировки. Это становится действительно раздражающим, когда я где-то должен быть тихим (библиотека, поезд и т. Д.). Также было бы неплохо иметь некоторую задержку для возобновления воспроизведения радиотрасс после разблокировки экрана, чтобы иметь возможность реагировать на ситуацию, в которой я нахожусь.
Как я могу предотвратить такое поведение (хорошо, кроме выключения радиотренажера перед приостановкой)?
Запустив 10.04 в качестве обходного пути, чтобы избежать этого довольно раздражающего поведения, я собрал приведенный ниже скрипт и сохранил его как /etc/pm/sleep.d/13_radiotray .
(В терминале: gksudo gedit /etc/pm/sleep.d/13_radiotray
введите / вставьте код скрипта, сохраните файл и, наконец, сделайте его исполняемым с помощью: sudo chmod +x /etc/pm/sleep.d/13_radiotray
.)
Как вы можете видеть, что он делает: если запущен radiotray в режиме ожидания / гибернации он прерывается при возобновлении / оттаивании, а затем перезапускается в режиме «ожидания». Это работает хорошо для меня и моих потребностей ...
(Я не знаю, является ли нумерация (13 ...) скрипта "ОК", если необходим последний "выход $?" - или какого-либо использования вообще? - но в по крайней мере, это прекрасно работает для меня ...)
#!/bin/bash
# /etc/pm/sleep.d/13_radiotray
case "$1" in
resume|thaw)
# kill radiotray if it's running...
if pgrep -f /usr/bin/radiotray > /dev/null ; then
pkill -f /usr/bin/radiotray
# ...and then restart radiotray (idle)
# If it doesn't work with 'tty7', try '(:0.0)' or '(:0)'...
DISPLAY=:0.0 su `who | grep 'tty7' | awk '{print $1}'` -c "radiotray > /dev/null &"
fi
;;
esac
exit $?
Отредактировано 2012-11-03: изменена строка «DISPLAY =: ...» (см. комментарий ниже) / mikwie