Compare commits

...

3 commits

Author SHA1 Message Date
9e5bcd024b Docker image ready
Some checks are pending
continuous-integration/drone/push Build is running
2025-04-26 18:24:56 +02:00
42b795ae35 Add a quick start guide
All checks were successful
continuous-integration/drone/tag Build is passing
2025-04-26 18:06:00 +02:00
2b38d0d4b2 Deploy binaries on Github 2025-04-26 18:06:00 +02:00
4 changed files with 76 additions and 1 deletions

View file

@ -71,6 +71,19 @@ steps:
event:
- tag
- name: github release
image: plugins/github-release:linux-arm
settings:
api_key:
from_secret: github_api_token
github_url: https://github.com
files:
- deploy/hathoris-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}hf
- deploy/hathoris-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}v7
when:
event:
- tag
- name: docker
image: plugins/docker:linux-arm
settings:
@ -129,6 +142,18 @@ steps:
files:
- deploy/hathoris-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}
- name: github release
image: plugins/github-release
settings:
api_key:
from_secret: github_api_token
github_url: https://github.com
files:
- deploy/hathoris-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}
when:
event:
- tag
- name: docker
image: plugins/docker
settings:
@ -185,6 +210,18 @@ steps:
files:
- deploy/hathoris-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}
- name: github release
image: plugins/github-release
settings:
api_key:
from_secret: github_api_token
github_url: https://github.com
files:
- deploy/hathoris-${DRONE_STAGE_OS}-${DRONE_STAGE_ARCH}
when:
event:
- tag
- name: docker
image: plugins/docker
settings:

View file

@ -20,7 +20,10 @@ RUN go get && go generate && go build -ldflags="-s -w"
FROM alpine:3.18
ENV HATHORIS_BIND=:8080
EXPOSE 8080
CMD ["/srv/hathoris"]
RUN apk --no-cache add alsa-utils pulseaudio-utils mpv yt-dlp
COPY --from=build /go/src/git.nemunai.re/nemunaire/hathoris/hathoris /srv/hathoris

View file

@ -1,6 +1,9 @@
FROM alpine:3.18
ENV HATHORIS_BIND=:8080
EXPOSE 8080
CMD ["/srv/hathoris"]
RUN apk --no-cache add alsa-utils pulseaudio-utils mpv yt-dlp
COPY hathoris /srv/hathoris

View file

@ -47,8 +47,40 @@ Hathoris is compatible with any Linux distribution that has PulseAudio. It also
### Quick Installation Guide
TODO: Add a quick installation guide.
#### With Docker
```
docker run -p 8080:8080 \
--device /dev/snd \
-e PULSE_SERVER=unix:${XDG_RUNTIME_DIR}/pulse/native \
-v ${XDG_RUNTIME_DIR}/pulse/native:/run/pulse/native \
-v ~/.config/pulse/cookie:/root/.config/pulse/cookie \
nemunaire/hathoris
```
#### Without Docker
1. Install dependancies.
On Debian/Ubuntu/Raspbian/armbian/...: `sudo apt install alsa-utils pulseaudio-utils mpv yt-dlp`
On Alpine: `sudo apk add alsa-utils pulseaudio-utils mpv yt-dlp`
On ArchLinux/Manjaro: `sudo pacman -S alsa-utils pulseaudio mpv yt-dlp`
2. Download the [latest release binary for your architecture](/nemunaire/hathoris/releases/latest); choose between ARMv6 (Raspberry Pi Zero), ARMv7 (Voltastreams, Raspberry Pi 2+), ARM64 (Raspberry Pi Zero 2 and 3+ **with 64 bits OS**).
3. Give execution permissions: `chmod +x hathoris-linux-armv7`
4. (optional) [Prepare a configuration for optional virtual inputs](#audio-sources) (like radios, streaming sources)
The file is called `settings.json`, it is expected to be in the directory where you execute `hathoris`. It can be overwrited by adding a command line argument like `-settings-file /etc/hathoris/settings.json`.
5. Launch the binary: `./hathoris -bind :8081`
6. The interface will be available on the port 8081 from anywhere on your local network.
From your local machine, it'll be on <http://localhost:8081/>
Enjoy!
### Build the Project