[arch-commits] Commit in kresus/trunk (PKGBUILD kresus.service)
Bruno Pagani
archange at gemini.archlinux.org
Sat May 21 13:51:48 UTC 2022
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
More information about the arch-commits
mailing list