MiniDLNA: знаки вопроса в именах папок
Для трансляции медиаконтента дома с сервера на телевизоры я использую MiniDLNA. Всё работает замечательно из коробки, за исключением одного момента: стандартные папки «Видео», «Аудио» и т.д. начиная с какой-то из версий стали отображаться неправильно. Вместо нормальных названий отображаются знаки вопросов, типа такого: «?????». При этом русские названия папок самой файловой системы и файлы отображаются нормально. Судя по форумам, проблема тянется с начала 2015 года. В Интернете можно найти информацию об установке minidlna с нуля из исходников, но я сделал немного проще.
Если пакет ещё не установлен, то ставим его:
sudo apt-get install minidlna
Теперь надо исправить названия папок. Для этого качаем последнюю версию исходников и распаковываем их:
wget --trust-server-names http://sourceforge.net/projects/minidlna/files/latest/download
tar -xf minidlna-*
Переходим в распакованный каталог:
cd minidlna-*
Открываем на редактирование файл scanner.c и ищем строки вида
_("Music")
Такие строки заменяются русской локалью (по крайней мере должны были). Мы поступим просто: уберём символы подчёркивания и скобки, а всё что в кавычках переведём на русский язык.
Было:

Стало:

Теперь необходимо всё это скомпилировать. Ставим необходимые пакеты:
sudo apt-get install gcc debhelper libavcodec-dev libavformat-dev libavutil-dev libexif-dev libflac-dev libid3tag0-dev libjpeg-dev libogg-dev libsqlite3-dev libvorbis-dev
Затем собираем:
./configure
make
Полученный файл minidlnad кидаем в /usr/local/sbin с заменой, но предварительно остановив демон:
sudo service minidlna stop
sudo cp minidlnad /usr/local/sbin/
Удаляем базу данных (у вас она может лежать в другом месте, смотрите настройки):
sudo rm /var/lib/minidlna/files.db
Теперь запускаем minidlna и смотрим результат в любом DLNA плеере:
sudo service minidlna restart
Всё работает:
