summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: c03c88a072f6415f0011d00a80f5df4f0875bf59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
pkgname=rocket-mouse-git
_pkgname=rocket-mouse
pkgver=r50.c4bcdb0
pkgrel=3
pkgdesc='Space-themed activity manager and mouse jiggler'
arch=('x86_64')
url='https://github.com/willakins/rocket-mouse'
license=('ISC')
options=('!debug')
depends=('libxtst')
makedepends=('cmake' 'git' 'npm' 'png++')
provides=("$_pkgname")
conflicts=("$_pkgname")
source=(
  "${_pkgname}::git+${url}.git#branch=main"
  "${_pkgname}.desktop"
  "${_pkgname}.sh"
)
sha256sums=(
  'SKIP'
  'c3ab16e0459b5ca8e6af712cddad3295fcb6b344d7acc5429ae8c6dd831b1e21'
  '88a3b9069da7b7433e0d7244471dfa123f3d60acfa10fc081f81d9f0a382862c'
)

pkgver() {
  cd "$srcdir/$_pkgname"
  printf 'r%s.%s' \
    "$(git rev-list --count HEAD)" \
    "$(git rev-parse --short=7 HEAD)"
}

build() {
  cd "$srcdir/$_pkgname"

  export HOME="$srcdir/.home"
  export npm_config_cache="$srcdir/npm-cache"
  npm install --no-audit --no-fund
  npm run build

  local electron_runtime_dir="$srcdir/${_pkgname}-electron-dist"
  rm -rf "$electron_runtime_dir"
  cp -r node_modules/electron/dist "$electron_runtime_dir"

  npm prune --omit=dev
}

package() {
  cd "$srcdir/$_pkgname"

  local appdir="$pkgdir/usr/lib/$_pkgname"
  local electron_runtime_dir="$srcdir/${_pkgname}-electron-dist"

  install -dm755 "$appdir"
  cp -r main.js package.json src node_modules "$appdir/"
  cp -r "$electron_runtime_dir" "$appdir/electron"

  install -Dm755 \
    "$srcdir/${_pkgname}.sh" \
    "$pkgdir/usr/bin/$_pkgname"
  install -Dm644 \
    "$srcdir/${_pkgname}.desktop" \
    "$pkgdir/usr/share/applications/${_pkgname}.desktop"
  install -Dm644 \
    src/renderer/assets/icon.png \
    "$pkgdir/usr/share/pixmaps/${_pkgname}.png"
}