diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 75 |
1 files changed, 49 insertions, 26 deletions
@@ -1,24 +1,37 @@ -# Maintainer: syntheit <daniel@matv.io> +# Maintainer: Mark Wagie <mark dot wagie at proton dot me> +# Contributor: syntheit <daniel@matv.io> pkgname=tagspaces -pkgver=4.4.3 +pkgver=5.4.6 pkgrel=1 -pkgdesc='An offline, open source, document manager with tagging support' -arch=('i686' 'x86_64') -url='https://www.tagspaces.org' +_electronversion=25 +pkgdesc="An offline, open source, document manager with tagging support" +arch=('x86_64') +url="https://www.tagspaces.org" license=('AGPL3') -depends=('gtk3' 'nss' 'libxtst' 'at-spi2-core' 'util-linux-libs' 'ffmpeg' 'libvips' 'libxcrypt-compat') -makedepends=('git' 'yarn' 'python') -source=("https://github.com/tagspaces/tagspaces/archive/v${pkgver}.tar.gz" "tagspaces.desktop") -sha512sums=('6480f30467bc5131ad06af9fd4563d5a7b0b820655c9289956cb22a5c9dd0ca9f0320ec6812f4ef45335967c26b222254b5e57d87d19103b09064cb0128dd554' 'cb241109c6a2d721bb629014062b59fdb6c55408c02de4c3decb0e83ddfb3fdb6d0eaac8c7ce0492e3a38ded352a9868335caf1cd75355bcda15f73ac8e2cdc7') +depends=("electron${_electronversion}" 'libnotify' 'libsecret' 'xdg-utils') +makedepends=('git' 'libxcrypt-compat' 'npm') +source=("$pkgname-$pkgver.tar.gz::https://github.com/tagspaces/tagspaces/archive/refs/tags/v$pkgver.tar.gz" + "$pkgname.desktop" + "$pkgname.sh") +sha256sums=('e96a0c9b44073c4228ca8441edbbd71f11ce0947b0bd39681bfe968e702167de' + 'a548e2b62a61a93d80482ebe43ef11e33e2c2bfef9db641fc583bd5539ac6948' + '99a8679718609b93f61ac8119fbeb080ca0ec5e5f2d99b08e673fa86a3d8b32b') prepare() { - cd ${srcdir}/${pkgname}-${pkgver} - mkdir -p ${srcdir}/yarn_cache - # Make .git directory because husky must be run in the same directory as .git + cd "$pkgname-$pkgver" + export npm_config_cache="$srcdir/npm_cache" + + # Modify build target + sed -i 's/"deb", "tar.gz", "appImage"/"deb"/g' resources/builder.json + + # Skip husky mkdir -p .git - yarn --cache-folder=${srcdir}/yarn_cache install - yarn --cache-folder=${srcdir}/yarn_cache install-ext-node - yarn --cache-folder=${srcdir}/yarn_cache global add node-gyp + npm run skip:husky:pre-commit + + npm install + npm run install-ext-node + + # A key is required in order for the main application to communicate with the web server cd app touch .env generated_key=$(tr -dc A-Za-z0-9 </dev/urandom | head -c 128) @@ -26,18 +39,28 @@ prepare() { } build() { - cd ${srcdir}/${pkgname}-${pkgver} - yarn --cache-folder=${srcdir}/yarn_cache build - yarn --cache-folder=${srcdir}/yarn_cache package-linux - cd ${srcdir}/${pkgname}-${pkgver} + cd "$pkgname-$pkgver" + export npm_config_cache="$srcdir/npm_cache" + electronDist="/usr/lib/electron${_electronversion}" + electronVer="$(sed s/^v// /usr/lib/electron${_electronversion}/version)" + export ELECTRON_SKIP_BINARY_DOWNLOAD=1 + npm run build + npm run install-ext-node-linux + ./node_modules/.bin/electron-builder --linux --config resources/builder.json \ + ${dist} -c.electronDist=${electronDist} -c.electronVersion=${electronVer} } package() { - mkdir -p "${pkgdir}/opt/${pkgname}" - mkdir -p "${pkgdir}/usr/bin/" - cp -R "${srcdir}/builds/linux-unpacked"/* "${pkgdir}/opt/${pkgname}" - chmod 755 "${pkgdir}/opt/${pkgname}/tagspaces" - ln -s "/opt/${pkgname}/tagspaces" "${pkgdir}/usr/bin/tagspaces" - install -Dm644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" - install -Dm644 "${srcdir}/${pkgname}-${pkgver}/resources/icons/256x256.png" "${pkgdir}/usr/share/pixmaps/${pkgname}.png" + install -Dm644 builds/linux-unpacked/resources/app.asar -t \ + "$pkgdir/usr/lib/$pkgname/" + cp -r builds/linux-unpacked/resources/app.asar.unpacked -t \ + "$pkgdir/usr/lib/$pkgname/" + for i in 16 32 48 64 128 256; do + install -Dm644 "builds/.icon-set/icon_${i}x${i}.png" \ + "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png" + install -Dm644 builds/.icon-set/icon_512.png \ + "$pkgdir/usr/share/icons/hicolor/512x512/apps/$pkgname.png" + done + install -Dm755 "$pkgname.sh" "$pkgdir/usr/bin/$pkgname" + install -Dm644 "$pkgname.desktop" -t "$pkgdir/usr/share/applications/" } |