Date: Saturday, May 21, 2022 @ 13:51:48 Author: archange Revision: 1209541
upgpkg: kresus 0.18.0-2 Actually use the built source instead of ditching everything and downloading from npm. :facepalm: AF_NETLINK is now required by node, else it errors with: node:os:68 throw new ERR_SYSTEM_ERROR(ctx); ^ SystemError [ERR_SYSTEM_ERROR]: A system error occurred: uv_interface_addresses returned Unknown system error 97 (Unknown system error 97) at Object.networkInterfaces (node:os:259:16) at Object.<anonymous> (/usr/lib/kresus/node_modules/nodemailer/lib/shared/index.js:15:66) at Module._compile (node:internal/modules/cjs/loader:1105:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10) at Module.load (node:internal/modules/cjs/loader:981:32) at Function.Module._load (node:internal/modules/cjs/loader:822:12) at Module.require (node:internal/modules/cjs/loader:1005:19) at require (node:internal/modules/cjs/helpers:102:18) at Object.<anonymous> (/usr/lib/kresus/node_modules/nodemailer/lib/mailer/index.js:4:16) at Module._compile (node:internal/modules/cjs/loader:1105:14) { code: 'ERR_SYSTEM_ERROR', info: { errno: 97, code: 'Unknown system error 97', message: 'Unknown system error 97', syscall: 'uv_interface_addresses' }, errno: [Getter/Setter], syscall: [Getter/Setter] } Modified: kresus/trunk/PKGBUILD kresus/trunk/kresus.service ----------------+ PKGBUILD | 28 +++++++++++++++++----------- kresus.service | 6 +++--- 2 files changed, 20 insertions(+), 14 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-05-21 11:45:35 UTC (rev 1209540) +++ PKGBUILD 2022-05-21 13:51:48 UTC (rev 1209541) @@ -2,7 +2,7 @@ pkgname=kresus pkgver=0.18.0 -pkgrel=1 +pkgrel=2 pkgdesc="Self-hosted personal finance manager" arch=(x86_64) url="https://kresus.org" @@ -9,7 +9,7 @@ license=(MIT) backup=('etc/webapps/kresus/config.ini') depends=(python nodejs-lts-gallium woob) -makedepends=(yarn npm libpng) +makedepends=(yarn libpng node-gyp) optdepends=('python-pdfminer: La Banque Postale support') source=(https://framagit.org/kresusapp/kresus/-/archive/${pkgver}/${pkgname}-${pkgver}.tar.bz2 config.ini @@ -18,7 +18,7 @@ ${pkgname}.tmpfiles) sha256sums=('2bbade2feafc1ab60218f136fb5b5bb6c5b3d88a4936b2a39704c8b12cd64e68' '2a1de56c469b9a8e899614e6cb6ff8d6f205b5df8d30141230f1d0bc2bf15f40' - 'f57bac585629200877e03d75631b174cafa7d8fd42ca815db9aecc9e166d200c' + '14d1373b0ba27b5695d75119af066348328be4104028d4d7a981252f7c9b1265' 'd9d30f5470c7165e4917487b69d7ab82e463da4e1355056e1035ee501d3f1adc' 'ba8ad7d9eb5d2b47fde5f6a3ab98596e5c679141b78d76d54b44830604b67632') @@ -35,19 +35,25 @@ package() { cd ${pkgname}-${pkgver} - export CFLAGS+=" -ffat-lto-objects" - DESTDIR="${pkgdir}" npm -g install kresus --no-audit --no-fund + # Remove building modules and install production ones only + rm -rf node_modules + yarn install --production --no-fund + # Move to install point + install -d "${pkgdir}"/usr/{bin,lib/kresus/} + mv bin build node_modules "${pkgdir}"/usr/lib/kresus/ + # Symlink executable + ln -s /usr/lib/kresus/bin/kresus.js "${pkgdir}"/usr/bin/kresus # Remove useless stuff - rm -r "${pkgdir}"/usr/lib/node_modules/kresus/support - find "${pkgdir}"/usr/lib/node_modules/kresus/ -type d \( -name 'test*' -o -name '.github' \) -exec rm -rf {} \+ - find "${pkgdir}"/usr/lib/node_modules/kresus/ -type f \( -name '*\.md' -o -name 'LICENSE*' -o -name 'license' -o -name '\.*' \) -delete + find "${pkgdir}"/usr/lib/kresus/ -type d \( -name 'test' -o -name 'tests' -o -name 'tools' -o -name '\.github' \) -exec rm -rv {} \+ + find "${pkgdir}"/usr/lib/kresus/ -type f \( -name '*\.md' -o -name '*\.txt' -o -name 'AUTHORS' -o -iname 'LICENSE*' -o -name 'Dockerfile' -o -name 'Makefile' -o -iname 'README*' -o -name '\.*' \) -delete -print # No -o -name 'package.json' because they seem required # node-expat artifacts - rm -r "${pkgdir}"/usr/lib/node_modules/kresus/node_modules/node-expat/{binding.gyp,build/{Makefile,Release/{.deps,obj.target},binding.Makefile,config.gypi,deps,node_expat.target.mk},deps/,node-expat.cc} + rm -rv "${pkgdir}"/usr/lib/kresus/node_modules/node-expat/{build/{Release/{.deps,obj.target,libexpat.a},binding.Makefile,deps,node_expat.target.mk},deps,node-expat.cc} - # Fix npm crazyness - chown -R root:root "${pkgdir}"/usr + # Fix permissions + chmod -R go-w "${pkgdir}"/usr/lib/kresus + chown -R root:root "${pkgdir}"/usr/lib/kresus install -Dm644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/ Modified: kresus.service =================================================================== --- kresus.service 2022-05-21 11:45:35 UTC (rev 1209540) +++ kresus.service 2022-05-21 13:51:48 UTC (rev 1209541) @@ -22,15 +22,15 @@ PrivateTmp=true PrivateUsers=true ProtectClock=true -ProtectControlGroups=yes +ProtectControlGroups=true ProtectHome=true ProtectHostname=true ProtectKernelLogs=true -ProtectKernelModules=yes +ProtectKernelModules=true ProtectKernelTunables=true ProtectProc=invisible ProtectSystem=strict -RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 +RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 AF_NETLINK RestrictNamespaces=true RestrictRealtime=true RestrictSUIDSGID=true