MikMuellerDev / radio

A headless music player which aims to replace RadiGo

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Radio

Important

I am open to fix any bugs or introduce small features, but I do not have time to implement support for additional audio formats or other large features.

A headless music player which supports internet radio and streaming.

Getting Started

Installation

  • Make sure that sudo is installed on the target machine
  • Execute the file install.sh as non-root
  • The application files will be installed at /usr/bin/radio
  • The configuration file will be installed at /etc/radio/config.toml
  • Radio can then be controlled via systemd: sudo systemctl enable radio --now

Without Installation

  • Execute the following command to start radio ./radio run
  • On the first launch, a new configuration file will be created without starting the service

Configuration

Under normal conditions, the service creates a configuration file named config.toml in the working directory where it is launched. If the service is launched with the -c flag, the configuration path can be customized.

Server Configuration

port = 8083
session_key = "must be over 64 characters long"

The configuration file includes the port variable which determines the port on which radio's HTTP server will listen on.

The session_key must be over 64 characters long and should be kept secret. On Unix-like systems, such a key can be generated using the following command:

openssl rand -hex 64

Adding Users

Users can be added in the users list in the configuration file. Every user must have a unique username and should be protected via a secure password.

[[users]]
username = "admin" # A unique username
password = "secret" # A secure password


[[users]]
username = "another_username"
password = "secret2"

Adding Radio Stations / Audio Streams

Generally speaking, radio should support most MP3 network streams. It does

About

A headless music player which aims to replace RadiGo

License:GNU General Public License v3.0


Languages

Language:Rust 45.6%Language:Svelte 35.2%Language:SCSS 4.6%Language:Makefile 3.9%Language:HTML 2.7%Language:TypeScript 2.6%Language:Dockerfile 2.3%Language:Python 1.9%Language:Shell 0.9%Language:JavaScript 0.3%