понедельник, 28 сентября 2009 г.

Зачем хранить музыку на жестком?...

При наличии безлимитного интернета хранить музыку на жестком точно ни к чему. После непродолжительных поисков был найден сервис бесплатной музыки Jamendo. Именно с него берет треки плеер на libre.fm. Можно слушать музыку прямо через браузер на libre.fm или на самом Jamendo, но это еще то самоистязание. Лучше всё же полноценным десктопным приложением. Используемый мною Audacious не подошел для этих целей - в нем нет вообще никакой интеграции с Jamendo. Зато она есть в MPD (вернее, в плагине одного из клиентов к MPD). Итак, ставим нужные пакеты:
# apt-get install mpd gmpc gmpc-plugins
Теперь нужно добавить права на проигрывание звука пользователю mpd, с правами которого будет запускаться демон нашего плеера:
# usermod --append --groups audio mpd
После этого нужно что-то перезапустить... не выяснив что, просто перезагрузил систему и права на вывод звука плеер всё же получил.
А дальше просто запускаем клиента из меню, открываем раздел Jamendo Browser, плеер загрузит базу композиций и можно выбирать песни для проигрывания.

После непродолжительного использования выясняется, что плеер использует звуковую карту в эксклюзивном режиме и больше никакие программы не могут выводить звук, пока mpd что-то проигрывает. Как говорит инструкция на сайте mpd, исправляется настройкой на использование миксера звука. Открываем на редактирование конфиг плеера /etc/mpd.conf и заменяем секцию audio_output на следующую:
audio_output {
type "alsa"
name "Sound Card"
options "dev=dmixer"
device "plug:dmix"
}
В этом же файле можно настроить mpd на программное управление громкостью, чтобы он не изменял общую громкость в системе. Нужно задать опцию:
mixer_type "software"
Сохраняем файл, перезапускаем плеер:
# /etc/init.d/mpd restart
Проблема решена.

Также к плееру есть модуль для отправки статистики на last.fm, libre.fm и jamendo.com. Ставим:
# apt-get install mpdscribble
При установке нас спросят, хотим ли установить в качестве демона. Дальше настраиваем его через редактирование конфига /etc/mpdscribble.conf, просто указываем там данные аккаунтов для тех сайтов, на которые вы хотите отправлять статистику, и сохраняем конфиг. Дальше перезапускаем демона:
# /etc/init.d/mpdscribble restart
И пользуемся.

Обновление
В последней версии mpdscribble для запуска его в качестве демона нужно дополнительно отредактировать файл /etc/default/mpdscribble и указать, что mpd запущен в качестве системного демона:
MPD_SYSTEMWIDE=1
Сохраняем файл. Перезапускаем сервис:
# /etc/init.d/mpdscribble restart
Готово.

Обновление
Для назначения глобальных горячих клавиш подойдет mpc и любая программа, умеющая вешать консольные команды на сочетания клавиш (например, CompizConfig Settings Manager, который наверняка у вас уже установлен). Все команды mpc очень просты и описаны в его мануале.

Обновление
Нашел скрипт для публикования прослушиваемой в MPD песни через Jabber-клиент Psi. Надо будет попробовать на досуге.

среда, 23 сентября 2009 г.

Ванильное ядро 2.6.31 и BFS в Debian

Исходники ядра в репозиториях Debian заметно отстают, поэтому решил попробовать ванильное ядро. Качаем архив с kernel.org, распаковываем в /usr/src, делаем ссылку linux на папку с исходниками. Как сообщает страница документации, утилита make-kpkg хорошо работает и с ванильным ядром.

С дополнительными модулями возникла только одна проблема: драйвер broadcom-sta не захотел собираться с этим ядром. Но на сайте Broadcom уже выложили версию драйвера, которая работает с последним ядром, качаем его и сначала распаковываем драйвер из репозиториев, а затем заменяем папку /usr/src/modules/broadcom-sta/i386 или /usr/src/modules/broadcom-sta/amd64 (в зависимости от вашей архитектуры) содержимым архива с официального сайта. Последние драйверы Nvidia и Virtualbox собираются нормально.

Дальше качаем патч BFS к нашей версии ядра и применяем его к исходникам:
# cd /usr/src/linux
# patch -p1 < /путь/к/файлу/патча/имя-файла.patch
Теперь можно собирать ядро:
# make-kpkg --initrd linux_image modules_image
Через пару десятков минут получим в папке /usr/src пакеты для нашей системы, можно ставить и пользоваться.

Сравнивать производительность в моем случае бессмысленно, т.к. я еще и изменил частоту таймера с 250HZ до 1000HZ, но в целом ощущения исключительно положительные. Система реагирует на команды ощутимо шустрее.

Примечание.
Вместе с патчем BFS уживается и последний патч Tuxonice. По крайней мере, они не патчат одни и те же файлы, т.е. их можно накладывать оба. Но у меня Tuxonice так и не пробуждает систему из спящего режима. Виноват, видимо, проприетарный драйвер от Nvidia и включенный Compiz. Ждущий режим, тем не менее, работает хорошо.

вторник, 8 сентября 2009 г.

Превращаем кэш пакетов в локальный репозиторий

В Synaptic (наверняка и в apt-get, просто этим не заморачивался) можно настроить кэш пакетов так, что у вас в папке /var/cache/apt/archives будут лежать все пакеты, необходимые для переустановки или восстановления вашей системы. Удобно? Не очень. Вручную устанавливать пакеты по одному, вручную устанавливать все зависимости... можно сойти с ума. Хорошо, что в Дебиан всё уже продумано до нас. Выполняем в папке с пакетами команду:
# dpkg-scanpackages -m ./ | gzip -9c > Packages.gz
Получаем репозиторий. Дальше копируем всю папку на машину, где будет производиться установка и прописываем в /etc/apt/sources.list строчку:
file:///путь/к/папке/ ./
Можно временно выключить интернет-репозитории, чтобы всё ставилось из локальных пакетов. И дальше классика:
# apt-get update
# apt-get install название_программы