Установка Radiotray-NG на Debian 12
Был такой годный минималистичный радио плеер Radiotray, но его забросили, а в Debian 11 выпилили из репозитория. Параллельно появился его доработанный форк — Radiotray-NG, но пакеты они собирают только под убунту. Но мы же не из говна слеплены, соберем и установим его из исходников 🙂
Сборка и установка
Проект развивается медленно, последний релиз 0.2.8 вышел 2 года назад, можно сказать, что протух. Но в репе разраба есть тестовая 0.2.9-dev с почти свежими фиксами. Установим ее (установка и сборка идентична и для 0.2.8). Но тут натыкаемся на грабли, некоторых зависимостей уже нет в 12 дебиане, придется их тащить из старых версий (10 и 11).
Установка зависимостей
Сначала установим из репы необходимые зависимости для сборки и установки:
sudo apt install libboost1.74-all-dev libwxgtk3.2-dev libjsoncpp-dev libgstreamer1.0-dev libxdg-basedir-dev libbsd-dev libayatana-appindicator3-dev libnotify-dev libglibmm-2.4-dev libgdk-pixbuf-xlib-2.0-0 libgdk-pixbuf2.0-0 cmake
Пакеты из старых версий скачаем и установим позже.
Сборка
Клонируем репозиторий:
git clone -b v0.2.9-dev --single-branch https://github.com/ebruck/radiotray-ng
Создаем в директории с репой директорию build
и переходим в нее:
mkdir radiotray-ng/build
cd radiotray-ng/build
Запускаем сборку:
cmake .. -DCMAKE_BUILD_TYPE=Release
Если вдруг увидим такое сообщение:
-- Configuring incomplete, errors occurred!
, то смотрим над ним, чего еще не хватает в системе, устанавливаем и опять запускаем сборку (обычно решается установкой пакета <имя_зависимости>-dev
).
При успешной сборке увидим примерно такое сообщение:
Building version: 0.2.9-dev for debian 12 -- DEB packaging...
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/radiotray-ng/build
Сборка deb-пакета
Теперь можно собирать deb пакет для установки:
make package
В конце сборки пакета увидим примерно такое сообщение:
CPack: Create package using DEB
CPack: Install projects
CPack: - Run preinstall target for: radiotray-ng
CPack: - Install project: radiotray-ng []
CPack: Create package
CPack: - package: /tmp/radiotray-ng/build/radiotray-ng_0.2.9-dev_debian_12_amd64.deb generated.
Выше видим, что готовый deb пакет собрался в той же директории.
Установка
Пока не устанавливаем собранный пакет. Скачаем в эту же директорию необходимые зависимости из реп старых версий дебиана:
wget http://ftp.ru.debian.org/debian/pool/main/w/wxwidgets3.0/libwxgtk3.0-gtk3-0v5_3.0.5.1+dfsg-2_amd64.deb
wget http://security.debian.org/debian-security/pool/updates/main/t/tiff/libtiff5_4.2.0-1+deb11u5_amd64.deb
wget http://ftp.ru.debian.org/debian/pool/main/w/wxwidgets3.0/libwxbase3.0-0v5_3.0.5.1+dfsg-2_amd64.deb
wget http://ftp.ru.debian.org/debian/pool/main/libw/libwebp/libwebp6_0.6.1-2.1+deb11u2_amd64.deb
wget http://ftp.ru.debian.org/debian/pool/main/libj/libjsoncpp/libjsoncpp1_1.7.4-3_amd64.deb
Теперь сразу пачкой устанавливаем все пакеты, включая сам плеер, из текущей директории:
sudo dpkg -i *.deb
На всякий запоминаем или записываем, чего установили, вдруг потом появятся конфликты с другими пакетами.
Все, плеер установлен. Теперь можно его запускать командой radiotray-ng
или через меню программ.
Импорт плейлистов из Radiotray
Если вдруг уже когда-то юзали обычный Radiotray, и остался xml файл с плейлистами, то его можно конвертировать в json формат под Radiotray-NG:
rt2rtng ~/.local/share/radiotray/bookmarks.xml > ~/.config/radiotray-ng/bookmarks.json
Перезапускаем плеер или через меню плеера тыкаем Preferences
-> Reload Bookmarks
. Появятся наши старые плейлисты: