nextcloud-app-radio/README.md
2020-10-18 12:20:25 +02:00

3.8 KiB

Nextcloud Radio app

This experimental app uses the radio-browser.info api and offers radio stations right in your Nextcloud!

Features

  • Browse hundreds of radio stations world wide and play them directly
  • Save stations to your favorites list
  • Smooth playback with audio transitions
  • Explore new stations in the category section

Maintainers

Installation

From the appstore

The most recent and stable version of the app can be found in the official appstore. For ArchLinux, there is an AUR package available.

From source

Clone the development repository with:

git clone https://git.project-insanity.org/onny/nextcloud-app-radio.git radio

Then run following commands to compile the project:

cd radio
make dev-setup
make build-js

Mount or move the radio folder into your Nextcloud apps/ directory. Go to the apps manager tab in your Nextcloud web interface, and enable the Radio app.

Testing

Can be easily tested using Docker:

docker build -t nextcloud .
docker run -v /tmp/nextcloud-app-radio:/opt/nextcloud/apps/radio -d --name nextcloud-app-radio -p 80:80 nextcloud

First part of -v is the path to the cloned and compiled or downloaded Nextcloud Radio app. Debug running container it with:

docker exec -i -t 665b4a1e17b6 /bin/bash

Where -t specifies the container id. If you further need to access the sqlite-database, logs or files inside the data folder of Nextcloud, that you also have to share this folder with the host:

docker run -v /tmp/dockerdata:/data/data -v /tmp/nextcloud-app-radio:/opt/nextcloud/apps/radio -d --name nextcloud -p 80:80 rootlogin/nextcloud

Development notes

While editing the code, you could run following helper script to automatically compile the project:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p # ref: https://github.com/gatsbyjs/gatsby/issues/11406
make watch-js

Generate translations. The following commands will require the dependency packages gettext and php.

git clone https://github.com/nextcloud/docker-ci.git
cd nextcloud-app-radio
php ../docker-ci/translations/translationtool/translationtool.phar create-pot-files
php ../docker-ci/translations/translationtool/translationtool.phar convert-po-files

Reporting bugs

You can report bugs in the public gitlab repository here and for discussion you can find a section for the app in the offical Nextcloud forums here.

Adding translations

For now only German translations are provided, so please submit your translations if possible :) It's really easy, just git clone this repo and copy the translation files in l10n according to your locale. Merge requests go to this radio repository.

Adding radio stations

This app uses a public and open database of radio stations as its backend, so any station you add in radio-browser.info (no account required), will be also available in this app. Feel free to contribute :)

Credits

  • radio-browser.info database api as backend for this app
  • Python example code to query stream metadata, took from here.

Donation

If you like this app and want to support my work, you can donate to this Bitcoin address:

19mpmuNczGDgdxaBLBn3REEpQLPPcJHZB6