You've already forked audiobookshelf
audiobookshelf: 2.17.7-1
This commit is contained in:
84
PKGBUILD
84
PKGBUILD
@ -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}"
|
||||
}
|
||||
|
Reference in New Issue
Block a user