summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorxiota2024-04-29 16:08:42 +0000
committerxiota2024-04-29 16:19:31 +0000
commit6a577390fbd065ca0570edf9e220fa04550e90ee (patch)
tree6c183b063f9290fc053fdd179e4eb2dc9c5d390b /PKGBUILD
parentc715dc65c8122ae5c476de9aeb43d758bd3ca2ff (diff)
downloadaur-6a577390fbd065ca0570edf9e220fa04550e90ee.tar.gz
2.2.8.r37
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD86
1 files changed, 59 insertions, 27 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 65febb2fd296..20f85b009821 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,42 +1,74 @@
-# Maintainer: Alexander Görtz <aur@nyloc.de>
+# Maintainer:
+# Contributor: Alexander Görtz <aur@nyloc.de>
-pkgname=quassel-webserver-git
-pkgver=2.2.8.r1.g4d8031e
+## options
+: ${_nodeversion:=20}
+
+# basic info
+_pkgname="quassel-webserver"
+pkgname="$_pkgname-git"
+pkgver=2.2.8.r37.g019bfdc
pkgrel=1
pkgdesc="A web client for Quassel (requires a running quasselcore)"
-arch=('i686' 'x86_64')
url="https://github.com/magne4000/quassel-webserver"
license=('MIT')
-source=("${pkgname%-git}::git+https://github.com/magne4000/quassel-webserver.git"
- "${pkgname%-git}.service")
-depends=('nodejs')
-makedepends=('npm')
-sha256sums=('SKIP'
- '2dab6d8506790ab08ea033e9b2de98884483ea79a5a8016f4af79281240614e0')
-install=$pkgname.install
-backup=("usr/share/webapps/${pkgname%-git}/settings-user.js")
+arch=('any')
+
+makedepends=(
+ 'git'
+ 'nvm' # AUR
+)
+
+options=('!strip')
+install="$_pkgname.install"
+backup=("usr/share/webapps/$_pkgname/settings-user.cjs")
+_pkgsrc="$_pkgname"
+source=("$_pkgsrc"::"git+https://github.com/magne4000/quassel-webserver.git")
+sha256sums=('SKIP')
pkgver() {
- cd "${pkgname%-git}"
- ( set -o pipefail
- git describe --long --tags 2>/dev/null | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' ||
- printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
- )
+ cd "$_pkgsrc"
+ git describe --long --tags --abbrev=7 \
+ | sed -E 's/^[^0-9]*//;s/([^-]*-g)/r\1/;s/-/./g'
+}
+
+_nvm_env() {
+ export HOME="$SRCDEST/node-home"
+ export NVM_DIR="$SRCDEST/node-nvm"
+
+ # set up nvm
+ source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
+ nvm install $_nodeversion
+ nvm use $_nodeversion
+}
+
+build() {
+ _nvm_env
+
+ cd "$_pkgsrc"
+ npm install --no-audit --no-fund --prefer-offline --production --omit=dev
}
package() {
- cd $srcdir/${pkgname%-git}
- msg 'Fetching NPM dependencies...'
- npm install --production
+ depends=(
+ 'coffee'
+ 'nodejs'
+ )
+
+ cd "$_pkgsrc"
+
+ install -Dm644 "scripts/quassel-webserver.service" -t "$pkgdir/usr/lib/systemd/system/"
+
+ mkdir -p "$pkgdir/usr/share/webapps/$_pkgname"
+ for _directory in lib node_modules public routes ssl views; do
+ cp --reflink=auto -dpr --no-preserve=ownership $_directory "$pkgdir/usr/share/webapps/$_pkgname/$_directory"
+ done
- install -Dm644 "$srcdir/${pkgname%-git}.service" "$pkgdir/usr/lib/systemd/system/${pkgname%-git}.service"
+ install -Dm644 app.js settings.cjs package.json snapcraft.yaml -t "$pkgdir/usr/share/webapps/$_pkgname/"
+ install -Dm644 settings.cjs "$pkgdir/usr/share/webapps/$_pkgname/settings-user.cjs"
- mkdir -p "$pkgdir/usr/share/webapps/${pkgname%-git}"
- for _directory in bin lib node_modules public routes ssl views; do
- cp -dpr --no-preserve=ownership $_directory "$pkgdir/usr/share/webapps/${pkgname%-git}/$_directory"
- done
+ install -Dm644 LICENSE-MIT "$pkgdir/usr/share/licenses/LICENSE"
- install -Dm644 app.js settings.js package.json snapcraft.yaml -t "$pkgdir/usr/share/webapps/${pkgname%-git}"
- install -Dm644 settings.js "$pkgdir/usr/share/webapps/${pkgname%-git}/settings-user.js"
+ chmod -R u+rwX,go+rX,go-w "$pkgdir/"
}