meshcentral/PKGBUILD
2024-05-24 10:13:41 +02:00

44 lines
1.9 KiB
Bash

# Maintainer: Carlos Galindo <arch -a-t- cgj .d.o.t. es>
pkgname=meshcentral
pkgver=1.1.23
pkgrel=1
pkgdesc="Web based remote computer management server"
arch=("any")
url="https://meshcentral.com"
license=('Apache')
depends=("nodejs>10")
makedepends=("npm")
optdepends=("mongodb: for larger deployments")
source=("$pkgname-$pkgver.tgz::https://registry.npmjs.org/$pkgname/-/$pkgname-$pkgver.tgz"
"$pkgname.service"
"$pkgname.tmpfiles"
"$pkgname.sysusers")
sha256sums=('75c22874bcc24fb44f8c7e43a93d534df7a3bb339aea9b01ab34428ea1fc45a2'
'339ee5927101ca2cf945c2e26a4c3d1a7af452119e67fd57c089b5fa88cbdc4e'
'30608aab6b9b268e492506a5c230a49cc28cb47dd09b7c28c586580132ee7f7a'
'259209675649cd7630167a3ac0af3f33836f683c031c8b47e5ccc3a1bb97aa15')
noextract=("$pkgname-$pkgver.tgz")
package() {
cd "$srcdir"
# Install systemD files
install -Dm644 "$pkgname.service" "$pkgdir/usr/lib/systemd/system/$pkgname.service"
install -Dm644 "$pkgname.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
install -Dm644 "$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
# Install npm package and extra dependencies that meshcentral tries to install
# on first boot
npm install --global --prefix "$pkgdir/usr/lib/$pkgname" \
"$srcdir/$pkgname-$pkgver.tgz" \
archiver@5.3.2 otplib@10.2.3 ua-parser-js@1.0.35
# npm gives ownership of ALL FILES to build user
# https://bugs.archlinux.org/task/63396
chown -R root:root "$pkgdir/usr/lib/$pkgname"
# Data directories
install -dm755 "$pkgdir/var/lib/$pkgname"
install -dm750 "$pkgdir/var/lib/$pkgname/"{data,files,backup}
ln -s "../../../../var/lib/$pkgname/data" "$pkgdir/usr/lib/$pkgname/lib/$pkgname-data"
ln -s "../../../../var/lib/$pkgname/files" "$pkgdir/usr/lib/$pkgname/lib/$pkgname-files"
ln -s "../../../../var/lib/$pkgname/backup" "$pkgdir/usr/lib/$pkgname/lib/$pkgname-backup"
}