Allow to listen unix socket

This commit is contained in:
NXShock 2025-06-03 13:33:05 +05:00
parent 4451458dc2
commit 286577dd90
4 changed files with 26 additions and 8 deletions

View file

@ -1,5 +1,5 @@
pkgname=promodj
pkgver=0.2.0
pkgver=0.2.1
pkgrel=0
pkgdesc="Proxy client for promodj.com"
arch=('x86_64' 'aarch64')

18
main.go
View file

@ -2,7 +2,9 @@ package main
import (
"log"
"net"
"net/http"
"net/url"
"os"
"time"
)
@ -40,7 +42,21 @@ func main() {
http.HandleFunc("/stream", handleStream)
http.HandleFunc("/player", handlePlayer)
err := http.ListenAndServe(config.ListenAddr, nil)
u, err := url.Parse(config.ListenAddr)
if err != nil {
log.Fatalln(err)
}
listener, err := net.Listen(u.Scheme, u.Host+u.Path)
if err != nil {
log.Fatalln(err)
}
if err = os.Chmod(u.Host+u.Path, 0660); err != nil {
log.Fatalln(err)
}
err = http.Serve(listener, http.DefaultServeMux)
if err != nil {
log.Fatalln(err)
}

View file

@ -1,6 +1,6 @@
ListenAddr = ":80" # addr:port or :port
BufferSize = 128 # encoded file buffer in MiB
Bitrate = 32 # encoded file bitrate in kbit/s
Codec = "libopus" # ffmpeg codec
Format = "opus" # ffmpeg format
ContentType = "audio/ogg" # Content-Type header for served files
ListenAddr = "http://0.0.0.0:80" # addr:port or :port or path to unix socket
BufferSize = 128 # encoded file buffer in MiB
Bitrate = 32 # encoded file bitrate in kbit/s
Codec = "libopus" # ffmpeg codec
Format = "opus" # ffmpeg format
ContentType = "audio/ogg" # Content-Type header for served files

View file

@ -6,6 +6,8 @@ Wants=network-online.target
[Service]
Type=simple
User=promodj
Group=promodj
RuntimeDirectory=promodj
ExecStart=/usr/bin/promodj
Restart=on-failure
RestartSec=10s