diff --git a/.copier-answers.yaml b/.copier-answers.yaml
index 84a4c66..04b5374 100644
--- a/.copier-answers.yaml
+++ b/.copier-answers.yaml
@@ -2,13 +2,13 @@
_commit: 0.5.0
_src_path: gh:radio-aktywne/template-app-liquidsoap
accountname: radio-aktywne
-appname: fusion
+appname: emifuse
description: Audio streaming with Liquidsoap ๐งผ
docs: true
-docsurl: https://radio-aktywne.github.io/app-fusion
-envprefix: FUSION
-imagename: apps/fusion
+docsurl: https://radio-aktywne.github.io/app-emifuse
+envprefix: EMIFUSE
+imagename: apps/emifuse
registry: true
releases: true
-reponame: app-fusion
-repourl: https://github.com/radio-aktywne/app-fusion
+reponame: app-emifuse
+repourl: https://github.com/radio-aktywne/app-emifuse
diff --git a/.github/workflows/registry.yaml b/.github/workflows/registry.yaml
index b9dc750..5cb0195 100644
--- a/.github/workflows/registry.yaml
+++ b/.github/workflows/registry.yaml
@@ -39,9 +39,9 @@ jobs:
push: true
# Slashes are here to make the string multiline and avoid using spaces
tags: "\
- ghcr.io/radio-aktywne/apps/fusion\
+ ghcr.io/radio-aktywne/apps/emifuse\
:latest,\
- ghcr.io/radio-aktywne/apps/fusion\
+ ghcr.io/radio-aktywne/apps/emifuse\
:${{ github.event.release.tag_name }}"
# Cache Docker layers between builds
cache-from: type=gha,scope=${{ github.workflow }}
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 2e65007..e89a878 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -11,13 +11,13 @@ The whole development environment will be running inside a container.
If you open the project in `Visual Studio Code`,
you should be prompted to reopen the project in a `Dev Container`.
You can also click
-[here](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/radio-aktywne/app-fusion)
+[here](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/radio-aktywne/app-emifuse)
or on the badge below to tell `Visual Studio Code`
to open the project in a `Dev Container`.
-[![Open in Dev Container](https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/radio-aktywne/app-fusion)
+[![Open in Dev Container](https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=visualstudiocode)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/radio-aktywne/app-emifuse)
@@ -100,7 +100,7 @@ Here are the most common ones, using `Task`:
Linting is automatically run on every pull request and push to the `main` branch.
You can find the `GitHub Actions` workflow that does this in
-[`.github/workflows/lint.yaml`](https://github.com/radio-aktywne/app-fusion/blob/main/.github/workflows/lint.yaml).
+[`.github/workflows/lint.yaml`](https://github.com/radio-aktywne/app-emifuse/blob/main/.github/workflows/lint.yaml).
If you use the `Dev Container` setup,
you will have the `Trunk` extension installed in `Visual Studio Code`.
@@ -133,13 +133,13 @@ Every time you create a new release on `GitHub`,
a `GitHub Actions` workflow will automatically build and publish a new `Docker` image
to the `GitHub Container Registry`.
You can find the `GitHub Actions` workflow that does this in
-[`.github/workflows/registry.yaml`](https://github.com/radio-aktywne/app-fusion/blob/main/.github/workflows/registry.yaml).
+[`.github/workflows/registry.yaml`](https://github.com/radio-aktywne/app-emifuse/blob/main/.github/workflows/registry.yaml).
## ๐ Docs
This project uses [`Docusaurus`](https://docusaurus.io) to generate documentation.
The documentation is hosted on `GitHub Pages` and can be found
-[here](https://radio-aktywne.github.io/app-fusion).
+[here](https://radio-aktywne.github.io/app-emifuse).
All the documentation files are located in the `docs` directory.
To build and serve the documentation locally,
@@ -154,4 +154,4 @@ This will start a local server that will serve the documentation.
The documentation is automatically built and deployed to `GitHub Pages`
whenever a commit is pushed to the `main` branch.
You can find the `GitHub Actions` workflow that does this in
-[`.github/workflows/docs.yaml`](https://github.com/radio-aktywne/app-fusion/blob/main/.github/workflows/docs.yaml).
+[`.github/workflows/docs.yaml`](https://github.com/radio-aktywne/app-emifuse/blob/main/.github/workflows/docs.yaml).
diff --git a/README.md b/README.md
index 649917a..97ecc50 100644
--- a/README.md
+++ b/README.md
@@ -1,13 +1,13 @@
-fusion app
+emifuse app
Audio streaming with Liquidsoap ๐งผ
-[![Lint](https://github.com/radio-aktywne/app-fusion/actions/workflows/lint.yaml/badge.svg)](https://github.com/radio-aktywne/app-fusion/actions/workflows/lint.yaml)
-[![Image](https://github.com/radio-aktywne/app-fusion/actions/workflows/image.yaml/badge.svg)](https://github.com/radio-aktywne/app-fusion/actions/workflows/image.yaml)
-[![Registry](https://github.com/radio-aktywne/app-fusion/actions/workflows/registry.yaml/badge.svg)](https://github.com/radio-aktywne/app-fusion/actions/workflows/registry.yaml)
-[![Docs](https://github.com/radio-aktywne/app-fusion/actions/workflows/docs.yaml/badge.svg)](https://github.com/radio-aktywne/app-fusion/actions/workflows/docs.yaml)
+[![Lint](https://github.com/radio-aktywne/app-emifuse/actions/workflows/lint.yaml/badge.svg)](https://github.com/radio-aktywne/app-emifuse/actions/workflows/lint.yaml)
+[![Image](https://github.com/radio-aktywne/app-emifuse/actions/workflows/image.yaml/badge.svg)](https://github.com/radio-aktywne/app-emifuse/actions/workflows/image.yaml)
+[![Registry](https://github.com/radio-aktywne/app-emifuse/actions/workflows/registry.yaml/badge.svg)](https://github.com/radio-aktywne/app-emifuse/actions/workflows/registry.yaml)
+[![Docs](https://github.com/radio-aktywne/app-emifuse/actions/workflows/docs.yaml/badge.svg)](https://github.com/radio-aktywne/app-emifuse/actions/workflows/docs.yaml)
@@ -15,16 +15,16 @@ Audio streaming with Liquidsoap ๐งผ
## ๐ก About
-`fusion` is a [`Liquidsoap`](https://www.liquidsoap.info)
+`emifuse` is a [`Liquidsoap`](https://www.liquidsoap.info)
server that fuses music from playlists and live audio
and sends one output stream to broadcast servers.
## ๐ Further Reading
More in-depth documentation can be found
-[here](https://radio-aktywne.github.io/app-fusion).
+[here](https://radio-aktywne.github.io/app-emifuse).
## ๐ป Development
Read more about how to develop the project
-[here](https://github.com/radio-aktywne/app-fusion/blob/main/CONTRIBUTING.md).
+[here](https://github.com/radio-aktywne/app-emifuse/blob/main/CONTRIBUTING.md).
diff --git a/docker-compose.yaml b/docker-compose.yaml
index 358eb8f..88943c6 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -1,22 +1,22 @@
services:
- fusion:
+ emifuse:
build:
context: ./
network: host
environment:
- - "FUSION__SERVER__SRT__PORT=${FUSION__SERVER__SRT__PORT:-9000}"
- - "FUSION__SERVER__HTTP__PORT=${FUSION__SERVER__HTTP__PORT:-9001}"
- - "FUSION__STATE__STORE__PATH=${FUSION__STATE__STORE__PATH:-data/state.json}"
- - "FUSION__STATE__CACHE__TTL=${FUSION__STATE__CACHE__TTL:-60}"
- - "FUSION__EMICAST__ICY__HOST=${FUSION__EMICAST__ICY__HOST:-localhost}"
- - "FUSION__EMICAST__ICY__PORT=${FUSION__EMICAST__ICY__PORT:-8000}"
- - "FUSION__EMICAST__ICY__USER=${FUSION__EMICAST__ICY__USER:-source}"
- - "FUSION__EMICAST__ICY__PASSWORD=${FUSION__EMICAST__ICY__PASSWORD:-password}"
- - "FUSION__EMICAST__ICY__MOUNT=${FUSION__EMICAST__ICY__MOUNT:-radio.mp3}"
- - "FUSION__EMITUNES__HTTP__SCHEME=${FUSION__EMITUNES__HTTP__SCHEME:-http}"
- - "FUSION__EMITUNES__HTTP__HOST=${FUSION__EMITUNES__HTTP__HOST:-localhost}"
- - "FUSION__EMITUNES__HTTP__PORT=${FUSION__EMITUNES__HTTP__PORT:-42000}"
- - "FUSION__EMITUNES__HTTP__PATH=${FUSION__EMITUNES__HTTP__PATH:-}"
+ - "EMIFUSE__SERVER__SRT__PORT=${EMIFUSE__SERVER__SRT__PORT:-9000}"
+ - "EMIFUSE__SERVER__HTTP__PORT=${EMIFUSE__SERVER__HTTP__PORT:-9001}"
+ - "EMIFUSE__STATE__STORE__PATH=${EMIFUSE__STATE__STORE__PATH:-data/state.json}"
+ - "EMIFUSE__STATE__CACHE__TTL=${EMIFUSE__STATE__CACHE__TTL:-60}"
+ - "EMIFUSE__EMICAST__ICY__HOST=${EMIFUSE__EMICAST__ICY__HOST:-localhost}"
+ - "EMIFUSE__EMICAST__ICY__PORT=${EMIFUSE__EMICAST__ICY__PORT:-8000}"
+ - "EMIFUSE__EMICAST__ICY__USER=${EMIFUSE__EMICAST__ICY__USER:-source}"
+ - "EMIFUSE__EMICAST__ICY__PASSWORD=${EMIFUSE__EMICAST__ICY__PASSWORD:-password}"
+ - "EMIFUSE__EMICAST__ICY__MOUNT=${EMIFUSE__EMICAST__ICY__MOUNT:-radio.mp3}"
+ - "EMIFUSE__EMITUNES__HTTP__SCHEME=${EMIFUSE__EMITUNES__HTTP__SCHEME:-http}"
+ - "EMIFUSE__EMITUNES__HTTP__HOST=${EMIFUSE__EMITUNES__HTTP__HOST:-localhost}"
+ - "EMIFUSE__EMITUNES__HTTP__PORT=${EMIFUSE__EMITUNES__HTTP__PORT:-42000}"
+ - "EMIFUSE__EMITUNES__HTTP__PATH=${EMIFUSE__EMITUNES__HTTP__PATH:-}"
network_mode: host
volumes:
- data:/app/data/
diff --git a/docs/docs/01-Index.md b/docs/docs/01-Index.md
index f82f0b4..9127e58 100644
--- a/docs/docs/01-Index.md
+++ b/docs/docs/01-Index.md
@@ -3,12 +3,12 @@ slug: /
title: Index
---
-# fusion app
+# emifuse app
Audio streaming with Liquidsoap ๐งผ
## ๐ก About
-`fusion` is a [`Liquidsoap`](https://www.liquidsoap.info)
+`emifuse` is a [`Liquidsoap`](https://www.liquidsoap.info)
server that fuses music from playlists and live audio
and sends one output stream to broadcast servers.
diff --git a/docs/docs/03-Configuration.md b/docs/docs/03-Configuration.md
index 45b9f61..5db0a9a 100644
--- a/docs/docs/03-Configuration.md
+++ b/docs/docs/03-Configuration.md
@@ -7,42 +7,42 @@ title: Configuration
You can configure the app at runtime using various environment variables:
-- `FUSION__SERVER__SRT__PORT`
+- `EMIFUSE__SERVER__SRT__PORT`
port to listen for SRT connections
(default: `9000`)
-- `FUSION__SERVER__HTTP__PORT` -
+- `EMIFUSE__SERVER__HTTP__PORT` -
port to listen for HTTP connections
(default: `9001`)
-- `FUSION__STATE__STORE__PATH` -
+- `EMIFUSE__STATE__STORE__PATH` -
path to the file to store the state
(default: `data/state.json`)
-- `FUSION__STATE__CACHE__TTL` -
+- `EMIFUSE__STATE__CACHE__TTL` -
how long to cache the state in memory in seconds
(default: `60`)
-- `FUSION__EMICAST__ICY__HOST` -
+- `EMIFUSE__EMICAST__ICY__HOST` -
host of the ICY API of the emicast service
(default: `localhost`)
-- `FUSION__EMICAST__ICY__PORT` -
+- `EMIFUSE__EMICAST__ICY__PORT` -
port of the ICY API of the emicast service
(default: `8000`)
-- `FUSION__EMICAST__ICY__USER` -
+- `EMIFUSE__EMICAST__ICY__USER` -
user to authenticate with the ICY API of the emicast service
(default: `source`)
-- `FUSION__EMICAST__ICY__PASSWORD` -
+- `EMIFUSE__EMICAST__ICY__PASSWORD` -
password to authenticate with the ICY API of the emicast service
(default: `password`)
-- `FUSION__EMICAST__ICY__MOUNT` -
+- `EMIFUSE__EMICAST__ICY__MOUNT` -
mount point of the ICY API of the emicast service to send the audio to
(default: `radio.mp3`)
-- `FUSION__EMITUNES__HTTP__SCHEME` -
+- `EMIFUSE__EMITUNES__HTTP__SCHEME` -
scheme of the HTTP API of the emitunes service
(default: `http`)
-- `FUSION__EMITUNES__HTTP__HOST` -
+- `EMIFUSE__EMITUNES__HTTP__HOST` -
host of the HTTP API of the emitunes service
(default: `localhost`)
-- `FUSION__EMITUNES__HTTP__PORT` -
+- `EMIFUSE__EMITUNES__HTTP__PORT` -
port of the HTTP API of the emitunes service
(default: `42000`)
-- `FUSION__EMITUNES__HTTP__PATH` -
+- `EMIFUSE__EMITUNES__HTTP__PATH` -
path of the HTTP API of the emitunes service
(default: ``)
diff --git a/docs/docusaurus.config.mts b/docs/docusaurus.config.mts
index 5c1dcbf..99dfea1 100644
--- a/docs/docusaurus.config.mts
+++ b/docs/docusaurus.config.mts
@@ -2,10 +2,10 @@ import type * as Preset from "@docusaurus/preset-classic";
import type { Config } from "@docusaurus/types";
import { themes } from "prism-react-renderer";
-const url = new URL("https://radio-aktywne.github.io/app-fusion");
+const url = new URL("https://radio-aktywne.github.io/app-emifuse");
const config: Config = {
- title: "fusion app docs",
+ title: "emifusee app docs",
favicon: "favicon.svg?v=1",
url: `${url.protocol}//${url.host}`,
@@ -41,14 +41,14 @@ const config: Config = {
themeConfig: {
navbar: {
- title: "fusion app docs",
+ title: "emifusee app docs",
logo: {
- alt: "fusion app docs logo",
+ alt: "emifusee app docs logo",
src: "logo.svg?v=1",
},
items: [
{
- href: "https://github.com/radio-aktywne/app-fusion",
+ href: "https://github.com/radio-aktywne/app-emifusee",
position: "right",
className: "header-github-link",
"aria-label": "GitHub repository",
diff --git a/openapi/schema.yaml b/openapi/schema.yaml
index ab7b101..c0f7731 100644
--- a/openapi/schema.yaml
+++ b/openapi/schema.yaml
@@ -1,5 +1,5 @@
info:
- title: fusion app
+ title: emifuse app
description: Audio streaming with Liquidsoap ๐งผ
openapi: 3.1.0
servers:
diff --git a/src/config/emicast/icy.liq b/src/config/emicast/icy.liq
index 497aceb..4ca8a7f 100644
--- a/src/config/emicast/icy.liq
+++ b/src/config/emicast/icy.liq
@@ -1,14 +1,14 @@
let config.emicast.icy = {}
let config.emicast.icy.host =
- utils.env.safeget(default="localhost", "FUSION__EMICAST__ICY__HOST")
+ utils.env.safeget(default="localhost", "EMIFUSE__EMICAST__ICY__HOST")
let config.emicast.icy.port =
utils.parse.int(
- utils.env.safeget(default="8000", "FUSION__EMICAST__ICY__PORT")
+ utils.env.safeget(default="8000", "EMIFUSE__EMICAST__ICY__PORT")
)
let config.emicast.icy.user =
- utils.env.safeget(default="source", "FUSION__EMICAST__ICY__USER")
+ utils.env.safeget(default="source", "EMIFUSE__EMICAST__ICY__USER")
let config.emicast.icy.password =
- utils.env.safeget(default="password", "FUSION__EMICAST__ICY__PASSWORD")
+ utils.env.safeget(default="password", "EMIFUSE__EMICAST__ICY__PASSWORD")
let config.emicast.icy.mount =
- utils.env.safeget(default="radio.mp3", "FUSION__EMICAST__ICY__MOUNT")
+ utils.env.safeget(default="radio.mp3", "EMIFUSE__EMICAST__ICY__MOUNT")
diff --git a/src/config/emitunes/http.liq b/src/config/emitunes/http.liq
index ec5a5bc..979b193 100644
--- a/src/config/emitunes/http.liq
+++ b/src/config/emitunes/http.liq
@@ -1,14 +1,14 @@
let config.emitunes.http = {}
let config.emitunes.http.scheme =
- utils.env.safeget(default="http", "FUSION__EMITUNES__HTTP__SCHEME")
+ utils.env.safeget(default="http", "EMIFUSE__EMITUNES__HTTP__SCHEME")
let config.emitunes.http.host =
- utils.env.safeget(default="localhost", "FUSION__EMITUNES__HTTP__HOST")
+ utils.env.safeget(default="localhost", "EMIFUSE__EMITUNES__HTTP__HOST")
let config.emitunes.http.port =
utils.parse.oint(
- utils.env.safeget(default="42000", "FUSION__EMITUNES__HTTP__PORT")
+ utils.env.safeget(default="42000", "EMIFUSE__EMITUNES__HTTP__PORT")
)
-let config.emitunes.http.path = utils.env.get("FUSION__EMITUNES__HTTP__PATH")
+let config.emitunes.http.path = utils.env.get("EMIFUSE__EMITUNES__HTTP__PATH")
let config.emitunes.http.url =
utils.url.build(
scheme=config.emitunes.http.scheme,
diff --git a/src/config/server/http.liq b/src/config/server/http.liq
index 200e7ad..4f3e52f 100644
--- a/src/config/server/http.liq
+++ b/src/config/server/http.liq
@@ -2,5 +2,5 @@ let config.server.http = {}
let config.server.http.port =
utils.parse.int(
- utils.env.safeget(default="9001", "FUSION__SERVER__HTTP__PORT")
+ utils.env.safeget(default="9001", "EMIFUSE__SERVER__HTTP__PORT")
)
diff --git a/src/config/server/srt.liq b/src/config/server/srt.liq
index 2305b62..43a9261 100644
--- a/src/config/server/srt.liq
+++ b/src/config/server/srt.liq
@@ -2,5 +2,5 @@ let config.server.srt = {}
let config.server.srt.port =
utils.parse.int(
- utils.env.safeget(default="9000", "FUSION__SERVER__SRT__PORT")
+ utils.env.safeget(default="9000", "EMIFUSE__SERVER__SRT__PORT")
)
diff --git a/src/config/state/cache.liq b/src/config/state/cache.liq
index 55ad901..58eb158 100644
--- a/src/config/state/cache.liq
+++ b/src/config/state/cache.liq
@@ -2,5 +2,5 @@ let config.state.cache = {}
let config.state.cache.ttl =
utils.parse.float(
- utils.env.safeget(default="60", "FUSION__STATE__CACHE__TTL")
+ utils.env.safeget(default="60", "EMIFUSE__STATE__CACHE__TTL")
)
diff --git a/src/config/state/store.liq b/src/config/state/store.liq
index d648e7f..48146f8 100644
--- a/src/config/state/store.liq
+++ b/src/config/state/store.liq
@@ -1,4 +1,4 @@
let config.state.store = {}
let config.state.store.path =
- utils.env.safeget(default="data/state.json", "FUSION__STATE__STORE__PATH")
+ utils.env.safeget(default="data/state.json", "EMIFUSE__STATE__STORE__PATH")