diff options
author | xiota | 2024-04-29 16:08:42 +0000 |
---|---|---|
committer | xiota | 2024-04-29 16:19:31 +0000 |
commit | 6a577390fbd065ca0570edf9e220fa04550e90ee (patch) | |
tree | 6c183b063f9290fc053fdd179e4eb2dc9c5d390b /PKGBUILD | |
parent | c715dc65c8122ae5c476de9aeb43d758bd3ca2ff (diff) | |
download | aur-6a577390fbd065ca0570edf9e220fa04550e90ee.tar.gz |
2.2.8.r37
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 86 |
1 files changed, 59 insertions, 27 deletions
@@ -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/" } |