summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO32
-rw-r--r--PKGBUILD69
-rwxr-xr-xezra-bible-app.sh3
3 files changed, 104 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..279210f08f8c
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,32 @@
+pkgbase = ezra-bible-app-git
+ pkgdesc = A user-friendly Bible study tool focussing on topical study based on keywords/tags
+ pkgver = 0.12.1.r25.g7104405
+ pkgrel = 1
+ url = https://github.com/ezra-bible-app/ezra-bible-app
+ arch = x86_64
+ license = GPL3
+ makedepends = git
+ makedepends = jq
+ makedepends = moreutils
+ makedepends = node-gyp
+ makedepends = node-prune
+ makedepends = nodejs-addon-api
+ makedepends = nodejs-pug-cli
+ makedepends = nodejs-sword-interface>=0.222.0
+ makedepends = npm
+ depends = electron
+ depends = icu
+ depends = nodejs
+ provides = ezra-bible-app
+ provides = ezra-project-git
+ conflicts = ezra-bible-app
+ conflicts = ezra-project-git
+ conflicts = ezra-project-git
+ replaces = ezra-project-git
+ source = git+https://github.com/ezra-bible-app/ezra-bible-app.git
+ source = ezra-bible-app.sh
+ sha256sums = SKIP
+ sha256sums = e135a382166ce27cf1348750767e157b2d292d4a189940f0fa874af29bc6540b
+
+pkgname = ezra-bible-app-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..b9816cf40d68
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,69 @@
+# Maintainer: Caleb Maclennan <caleb@alerque.com>
+
+pkgname=ezra-bible-app-git
+pkgver=0.12.1.r25.g7104405
+pkgrel=1
+pkgdesc='A user-friendly Bible study tool focussing on topical study based on keywords/tags'
+arch=('x86_64')
+url="https://github.com/${pkgname%-git}/${pkgname%-git}"
+license=('GPL3')
+depends=('electron'
+ 'icu'
+ 'nodejs')
+makedepends=('git'
+ 'jq'
+ 'moreutils'
+ 'node-gyp'
+ 'node-prune'
+ 'nodejs-addon-api' # run time dep but gets baked into electron asar
+ 'nodejs-pug-cli'
+ 'nodejs-sword-interface>=0.222.0' # run time dep but gets baked into electron asar
+ 'npm')
+provides=("${pkgname%-git}" "ezra-project-git")
+conflicts=(${provides[@]} "ezra-project-git")
+replaces=("ezra-project-git")
+source=("git+$url.git"
+ "${pkgname%-git}.sh")
+sha256sums=('SKIP'
+ 'e135a382166ce27cf1348750767e157b2d292d4a189940f0fa874af29bc6540b')
+
+pkgver() {
+ cd "${pkgname%-git}"
+ git describe --long --tags --abbrev=7 | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
+}
+
+prepare() {
+ cd "${pkgname%-git}"
+ jq 'del(.dependencies["node-addon-api", "node-sword-interface"], .devDependencies["electron", "electron-osx-sign", "node-abi", "node-gyp", "pug-cli", "sequelize-cli"])' package.json |
+ sponge package.json
+ rm -rf node_modules/{node-addon-api,node-sword-interface}
+ npm install --cache "$srcdir/npm-cache" --no-audit --no-fund --ignore-scripts
+}
+
+build() {
+ cd "${pkgname%-git}"
+ local _electron="$(electron --version | sed 's/^v//')"
+ npx electron-rebuild -f --version="$_electron"
+ node-prune node_modules
+ _ep () {
+ npx electron-packager ./ "${pkgname%-git}" \
+ --electron-version="$_electron" \
+ --overwrite \
+ --platform=linux \
+ --arch=x64 $@
+ }
+ _ep
+ ./build_scripts/purge_build_artifacts.sh
+ npm link node-addon-api node-sword-interface
+ _ep --asar
+}
+
+package() {
+ cd "${pkgname%-git}"
+ install -Dm755 "../${pkgname%-git}.sh" "$pkgdir/usr/bin/${pkgname%-git}"
+ install -Dm644 -t "$pkgdir/usr/share/applications/" "${pkgname%-git}.desktop"
+ install -Dm644 -t "$pkgdir/usr/lib/${pkgname%-git}/resources/" "${pkgname%-git}-linux-x64/resources/app.asar"
+ install -Dm644 -t "$pkgdir/usr/share/licences/$pkgname/" LICENSE
+ install -Dm644 -t "$pkgdir/usr/share/doc/${pkgname%-git}/" {CHANGELOG,README,TECH,LOC_METRICS}.md
+ install -Dm644 icons/ezra.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/${pkgname%-git}.svg"
+}
diff --git a/ezra-bible-app.sh b/ezra-bible-app.sh
new file mode 100755
index 000000000000..eefe235faa40
--- /dev/null
+++ b/ezra-bible-app.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env sh
+
+exec electron /usr/lib/ezra-bible-app/resources/app.asar "$@"