audiobookshelf: 2.17.7-1

This commit is contained in:
devome 2025-01-06 22:12:52 +08:00
parent ac8d2adb82
commit 5cc6fa1dca
4 changed files with 50 additions and 55 deletions

View File

@ -1,25 +1,25 @@
pkgbase = audiobookshelf
pkgdesc = Self-hosted audiobook server for managing and playing audiobooks
pkgver = v2.17.5
pkgver = 2.17.7
pkgrel = 1
url = https://github.com/advplyr/audiobookshelf
arch = x86_64
arch = aarch64
license = GPL-3.0-only
makedepends = nodejs
makedepends = npm
makedepends = git
depends = ffmpeg
depends = libnusqlite3
depends = nodejs
options = !debug
options = !strip
backup = etc/conf.d/audiobookshelf
source = git+https://github.com/advplyr/audiobookshelf#tag=v2.17.5
source = audiobookshelf-2.17.7.tar.gz::https://github.com/advplyr/audiobookshelf/archive/refs/tags/v2.17.7.tar.gz
source = audiobookshelf.conf
source = audiobookshelf.hook
source = audiobookshelf.service
source = audiobookshelf.sysusers
source = audiobookshelf.tmpfiles
sha256sums = e7139ced439a5e622a9191f0c50178b9e3b495888e1574de1cfd3a561e58c908
sha256sums = 839c778b8ae951d82a602d370452d702ad9b1d8ab6844984c934a3d2af0b710a
sha256sums = f889909ecd2324fa355ccc02b72c21da592afa07c70f56b82c2da9cff72993ad
sha256sums = 642deac39c60d849d0cfdfa718c4da4ea6728585b1b55141f6bb1445fa90bff5
sha256sums = 91d00bbc9800f80cde439fd9b5343cf031b6a09557f03172c92d40f2f0775c2b
sha256sums = 4f37d8e407eda555231dc23d1cd35d329075ae6686acbb89d0b4612a824d594d
sha256sums = cd5db44865de6f7401093b60869f937703213f196220e8c3325fa7f1b02db1fa

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
/pkg
/src
*.tar.gz
*.pkg.tar.*

View File

@ -1,65 +1,53 @@
# Maintainer: jason.nader@protonmail.com
# Maintainer: devome <evinedeng@hotmail.com>
# Based on PKGBUILD by Kevin S <aur@eldenring.mozmail.com>
pkgname=audiobookshelf
pkgver=v2.17.5
pkgver=2.17.7
pkgrel=1
pkgdesc="Self-hosted audiobook server for managing and playing audiobooks"
arch=('x86_64')
url="https://github.com/advplyr/audiobookshelf"
arch=("x86_64" "aarch64")
url="https://github.com/advplyr/${pkgname}"
license=('GPL-3.0-only')
depends=('ffmpeg')
makedepends=('nodejs' 'npm' 'git')
backup=('etc/conf.d/audiobookshelf')
options=(!debug !strip)
source=(
"git+${url}#tag=${pkgver}"
'audiobookshelf.conf'
'audiobookshelf.hook'
'audiobookshelf.service'
'audiobookshelf.sysusers'
'audiobookshelf.tmpfiles'
)
sha256sums=('e7139ced439a5e622a9191f0c50178b9e3b495888e1574de1cfd3a561e58c908'
'839c778b8ae951d82a602d370452d702ad9b1d8ab6844984c934a3d2af0b710a'
depends=("ffmpeg" "libnusqlite3" "nodejs")
makedepends=("npm")
backup=("etc/conf.d/${pkgname}")
options=("!debug")
source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/refs/tags/v${pkgver}.tar.gz"
"${pkgname}.conf"
"${pkgname}.hook"
"${pkgname}.service"
"${pkgname}.sysusers"
"${pkgname}.tmpfiles")
sha256sums=('f889909ecd2324fa355ccc02b72c21da592afa07c70f56b82c2da9cff72993ad'
'642deac39c60d849d0cfdfa718c4da4ea6728585b1b55141f6bb1445fa90bff5'
'91d00bbc9800f80cde439fd9b5343cf031b6a09557f03172c92d40f2f0775c2b'
'4f37d8e407eda555231dc23d1cd35d329075ae6686acbb89d0b4612a824d594d'
'cd5db44865de6f7401093b60869f937703213f196220e8c3325fa7f1b02db1fa'
'ec04988b13dd049fbd021a51275c92120179f74f1e71fd9141bd720633e5f99f')
prepare() {
cd "${srcdir}/${pkgname}"
# install build dependencies
npm install @yao-pkg/pkg
}
build() {
cd "${srcdir}/${pkgname}"
echo ">>> Building Client"
echo "--------------------"
cd client
rm -rf node_modules
npm ci --unsafe-perm=true --allow-root
NODE_OPTIONS=--openssl-legacy-provider npm run generate
cd ..
echo ">>> Building Server"
echo "--------------------"
rm -rf node_modules
npm ci --unsafe-perm=true --allow-root --only=production
cd "${pkgname}-${pkgver}"
npm run client
npm ci --only=production
find {client/dist,node_modules,server} -type f -name "*.map" | xargs rm -rf
sed -i '1i #!/usr/bin/node\n' prod.js
}
package() {
cd "${srcdir}/${pkgname}"
install -Dm644 "${pkgname}.conf" "${pkgdir}/etc/conf.d/${pkgname}"
install -Dm644 "${pkgname}.hook" "${pkgdir}/usr/share/doc/${pkgname}/${pkgname}.hook"
install -Dm644 "${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service"
install -Dm644 "${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf"
install -Dm644 "${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf"
"${srcdir}/${pkgname}"/node_modules/.bin/pkg -t node20-linux-x64 -o "${pkgdir}/usr/bin/audiobookshelf" .
install -D -m 644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
install -D -m 644 "${srcdir}/audiobookshelf.conf" "${pkgdir}/etc/conf.d/audiobookshelf"
install -D -m 644 "${srcdir}/audiobookshelf.service" "${pkgdir}/usr/lib/systemd/system/audiobookshelf.service"
install -D -m 644 "${srcdir}/audiobookshelf.sysusers" "${pkgdir}/usr/lib/sysusers.d/audiobookshelf.conf"
install -D -m 644 "${srcdir}/audiobookshelf.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/audiobookshelf.conf"
install -D -m 644 "${srcdir}/audiobookshelf.hook" "${pkgdir}/usr/share/doc/${pkgname}/audiobookshelf.hook"
cd "${pkgname}-${pkgver}"
install -Dm644 readme.md "${pkgdir}/usr/share/doc/${pkgname}/readme.md"
install -Dm644 *.json -t "${pkgdir}/usr/lib/${pkgname}"
install -Dm755 prod.js -t "${pkgdir}/usr/lib/${pkgname}"
mv node_modules "${pkgdir}/usr/lib/${pkgname}"
find {client/dist,server} -type f |
xargs -I {} install -Dm644 {} "${pkgdir}/usr/lib/${pkgname}/"{}
install -dm755 "${pkgdir}/usr/bin"
ln -s "/usr/lib/${pkgname}/prod.js" "${pkgdir}/usr/bin/${pkgname}"
}

View File

@ -1,7 +1,10 @@
METADATA_PATH=/var/lib/audiobookshelf/metadata
CONFIG_PATH=/var/lib/audiobookshelf/config
SOURCE=archlinux
FFMPEG_PATH=/usr/bin/ffmpeg
FFPROBE_PATH=/usr/bin/ffprobe
NUSQLITE3_PATH=/usr/lib/libnusqlite3.so
SKIP_BINARIES_CHECK=1
PORT=13378
HOST=0.0.0.0
# ROUTER_BASE_PATH=""