support unix socket

This commit is contained in:
Balakrishnan Balasubramanian 2025-02-12 17:38:05 -05:00
parent e0b1421d5c
commit 8c296fcf33
3 changed files with 44 additions and 2 deletions

View File

@ -1,7 +1,7 @@
pkgbase = audiobookshelf
pkgdesc = Self-hosted audiobook server for managing and playing audiobooks
pkgver = 2.19.2
pkgrel = 1
pkgrel = 11
epoch = 1
url = https://github.com/advplyr/audiobookshelf
arch = x86_64
@ -18,12 +18,14 @@ pkgbase = audiobookshelf
source = audiobookshelf.hook
source = audiobookshelf.service
source = audiobookshelf.sysusers
source = 0001-support-unix-socket.patch
source = audiobookshelf.tmpfiles
sha256sums = c18832312d22c7a51825618c66bdf8fbc446c8c403b8fed857d5feb23fa17d7c
sha256sums = 50a42f0de1da9f780da11fa8413539fbb0a77857205b7ae25bb5bd35f51ad335
sha256sums = 91d00bbc9800f80cde439fd9b5343cf031b6a09557f03172c92d40f2f0775c2b
sha256sums = 4f37d8e407eda555231dc23d1cd35d329075ae6686acbb89d0b4612a824d594d
sha256sums = cd5db44865de6f7401093b60869f937703213f196220e8c3325fa7f1b02db1fa
sha256sums = c89940d4c44e24aa28a94bd0f4217011f5d93ab2ac32055310de84e13d9e721e
sha256sums = ec04988b13dd049fbd021a51275c92120179f74f1e71fd9141bd720633e5f99f
pkgname = audiobookshelf

View File

@ -0,0 +1,36 @@
From 070fc3ff00d21939ddc127273467f42ef0bb4767 Mon Sep 17 00:00:00 2001
From: Balakrishnan Balasubramanian <git.user@balki.me>
Date: Wed, 12 Feb 2025 11:18:31 -0500
Subject: [PATCH] support unix socket
diff --git a/server/Server.js b/server/Server.js
index c3e73ae..115d170 100644
--- a/server/Server.js
+++ b/server/Server.js
@@ -395,10 +395,18 @@ class Server {
})
router.get('/healthcheck', (req, res) => res.sendStatus(200))
- this.server.listen(this.Port, this.Host, () => {
- if (this.Host) Logger.info(`Listening on http://${this.Host}:${this.Port}`)
- else Logger.info(`Listening on port :${this.Port}`)
- })
+ if(fs.pathExistsSync("/run/audiobookshelf")) {
+ const sockPath = "/run/audiobookshelf/web.sock"
+ this.server.listen(sockPath, () => {
+ fs.chmodSync(sockPath, 0o666);
+ Logger.info(`Listening on unix socket :${sockPath}`)
+ })
+ } else {
+ this.server.listen(this.Port, this.Host, () => {
+ if (this.Host) Logger.info(`Listening on http://${this.Host}:${this.Port}`)
+ else Logger.info(`Listening on port :${this.Port}`)
+ })
+ }
// Start listening for socket connections
SocketAuthority.initialize(this)
--
2.48.1

View File

@ -4,7 +4,7 @@
pkgname=audiobookshelf
pkgver=2.19.2
pkgrel=1
pkgrel=11
epoch=1
pkgdesc="Self-hosted audiobook server for managing and playing audiobooks"
arch=("x86_64" "aarch64")
@ -19,16 +19,20 @@ source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz
"${pkgname}.hook"
"${pkgname}.service"
"${pkgname}.sysusers"
"0001-support-unix-socket.patch"
"${pkgname}.tmpfiles")
sha256sums=('c18832312d22c7a51825618c66bdf8fbc446c8c403b8fed857d5feb23fa17d7c'
'50a42f0de1da9f780da11fa8413539fbb0a77857205b7ae25bb5bd35f51ad335'
'91d00bbc9800f80cde439fd9b5343cf031b6a09557f03172c92d40f2f0775c2b'
'4f37d8e407eda555231dc23d1cd35d329075ae6686acbb89d0b4612a824d594d'
'cd5db44865de6f7401093b60869f937703213f196220e8c3325fa7f1b02db1fa'
'c89940d4c44e24aa28a94bd0f4217011f5d93ab2ac32055310de84e13d9e721e'
'ec04988b13dd049fbd021a51275c92120179f74f1e71fd9141bd720633e5f99f')
build() {
cd "${pkgname}-${pkgver}"
patch -p1 -i "${srcdir}/0001-support-unix-socket.patch"
npm run client
npm ci --only=production
find {client/dist,node_modules,server} -type f -name "*.map" | xargs rm -rf