No description
  • Rust 46.8%
  • Svelte 34.4%
  • SCSS 4.5%
  • Makefile 3.8%
  • HTML 2.6%
  • Other 7.9%
Find a file
2024-07-29 00:48:58 +03:00
images Add web subproject 2023-01-01 19:21:38 +01:00
radio-web Add url mode 2023-03-30 13:58:56 +02:00
screenshots chore: Write README.md and add screenshots 2023-06-29 00:16:35 +02:00
src Use symphonia decoders instead 2024-07-29 00:48:58 +03:00
.dockerignore Add packaging workflow 2023-01-08 20:14:19 +01:00
.gitignore Use TOML for settings file, add first installer 2023-01-08 21:38:57 +01:00
.gitmodules Add mpv test 2022-09-08 16:31:20 +02:00
Cargo.toml Use symphonia decoders instead 2024-07-29 00:48:58 +03:00
CHANGELOG.md chore: Fix Docker build process 2023-06-29 00:17:37 +02:00
Dockerfile chore: Fix Docker build process 2023-06-29 00:17:37 +02:00
install.sh Add auto_start config option & CLI 2023-02-21 09:01:57 +01:00
LICENSE Introduce working rodio backend 2022-12-30 14:04:01 +01:00
Makefile chore: Fix Docker build process 2023-06-29 00:17:37 +02:00
radio.service Add auto_start config option & CLI 2023-02-21 09:01:57 +01:00
README.md chore: Add maintainer status to README.md 2024-04-23 07:29:56 +00:00
update_version.py chore: Add update_version.py and GH relase Make target 2023-06-24 10:35:12 +02:00

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