Date: Sunday, July 3, 2022 @ 15:16:46 Author: jelle Revision: 1243805
Final PKGBUILD Added: zigbee2mqtt/trunk/zigbee2mqtt.service zigbee2mqtt/trunk/zigbee2mqtt.sysusers zigbee2mqtt/trunk/zigbee2mqtt.tmpfiles Modified: zigbee2mqtt/trunk/PKGBUILD ----------------------+ PKGBUILD | 41 +++++++++++++++++++++-------------------- zigbee2mqtt.service | 40 ++++++++++++++++++++++++++++++++++++++++ zigbee2mqtt.sysusers | 2 ++ zigbee2mqtt.tmpfiles | 3 +++ 4 files changed, 66 insertions(+), 20 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-07-03 14:36:58 UTC (rev 1243804) +++ PKGBUILD 2022-07-03 15:16:46 UTC (rev 1243805) @@ -1,4 +1,5 @@ -# Maintainer: Sebastian Zwierzchowski <[email protected]> +# Maintainer: Jelle van der Waa <[email protected]> +# Contributor: Sebastian Zwierzchowski <[email protected]> pkgname=zigbee2mqtt pkgver=1.25.2 @@ -10,35 +11,35 @@ depends=('nodejs') makedepends=('typescript' 'npm') backup=('etc/zigbee2mqtt/configuration.yaml') -install=zigbee2mqtt.install -options=('!strip') optdepends=('mosquitto: MQTT broker') -source=("https://github.com/Koenkk/${pkgname}/archive/${pkgver}.tar.gz" 'zigbee2mqtt.service' +options=(!emptydirs) +source=(${pkgname}-${pkgver}.tar.gz::"https://github.com/Koenkk/${pkgname}/archive/${pkgver}.tar.gz" 'zigbee2mqtt.service' 'zigbee2mqtt.sysusers' 'zigbee2mqtt.tmpfiles') sha256sums=('96896ac656a1a60d2ec4b814b7e054b13360ce2415be4f3d61fda5b40f87328b' - '3e065dd87c9ae7573165721a60d56756952bd8199b411a508dd343f64c755c7a' + '5dea603b80d918039371f626e688b7152b390c5a5b413aa0af55c6a83d51af60' '3a86716e9036e97d885e9b5f37c7f87d9c2872435e4acf9fc4c9157264cf387b' - '8f0fbe06c8d6e8fdf37feb31f244930025d76785451f9049fd90fe6e23c259f6') + 'b8cb53b06176abb09e74e68daee702263f3d471b249c51b1b32d693fc7354fd8') -package() { - npm install -g --prefix "${pkgdir}/usr" --cache "${srcdir}/npm-cache" "${srcdir}/${pkgver}.tar.gz" - cd "${pkgdir}/usr/lib/node_modules/zigbee2mqtt" - npm install --save-dev - tsc -b . +build() { + cd "${pkgname}-${pkgver}" + npm install + NODE_ENV=production npm run build npm prune --production - node index.js writehash - cp lib/util/settings.schema.json dist/util - cd - - find ${pkgdir} -name "*.d.ts" -delete - find ${pkgdir} -name "*.d.ts.map" -delete - find ${pkgdir} -name "*.js.map" -delete +} +package() { + cd "${pkgname}-${pkgver}" + install -m0755 -d "${pkgdir}/usr/share/webapps/${pkgname}" + cp -a node_modules dist "${pkgdir}/usr/share/webapps/${pkgname}" + + install -m0644 cli.js -t "${pkgdir}/usr/share/webapps/${pkgname}" + install -m0644 index.js -t "${pkgdir}/usr/share/webapps/${pkgname}" + install -m0644 package.json -t "${pkgdir}/usr/share/webapps/${pkgname}" + + # sanitize permissions find "${pkgdir}/usr" -type d -exec chmod 755 {} + chown -R root:root "${pkgdir}" - find "${pkgdir}" -name package.json -print0 | xargs -r -0 sed -i '/_where/d' - - cd "${pkgname}-${pkgver}" install -Dm644 data/configuration.yaml "${pkgdir}/etc/${pkgname}/configuration.yaml" install -Dm644 "${srcdir}/${pkgname}.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}.service" Added: zigbee2mqtt.service =================================================================== --- zigbee2mqtt.service (rev 0) +++ zigbee2mqtt.service 2022-07-03 15:16:46 UTC (rev 1243805) @@ -0,0 +1,40 @@ +[Unit] +Description=zigbee2mqtt +After=network.target + +[Service] +ExecStart=node cli.js +WorkingDirectory=/usr/share/webapps/zigbee2mqtt +Environment=ZIGBEE2MQTT_DATA=/var/lib/zigbee2mqtt +StandardOutput=inherit +StandardError=inherit +Restart=always +User=zigbee2mqtt + +CapabilityBoundingSet= +NoNewPrivileges=true +RemoveIPC=true +LockPersonality=true + +ProtectControlGroups=true +ProtectKernelTunables=true +ProtectKernelModules=true +ProtectKernelLogs=true +ProtectHostname=true +ProtectProc=noaccess + +RestrictRealtime=true +RestrictSUIDSGID=true +RestrictNamespaces=true +RestrictAddressFamilies=AF_UNIX AF_INET AF_INET6 + +ProtectSystem=strict +ProtectHome=true +PrivateTmp=true +ReadWritePaths=/var/lib/zigbee2mqtt + +SystemCallArchitectures=native +SystemCallFilter=@system-service @pkey + +[Install] +WantedBy=multi-user.target Added: zigbee2mqtt.sysusers =================================================================== --- zigbee2mqtt.sysusers (rev 0) +++ zigbee2mqtt.sysusers 2022-07-03 15:16:46 UTC (rev 1243805) @@ -0,0 +1,2 @@ +u zigbee2mqtt - "zigbee2mqtt service user" +m zigbee2mqtt uucp Added: zigbee2mqtt.tmpfiles =================================================================== --- zigbee2mqtt.tmpfiles (rev 0) +++ zigbee2mqtt.tmpfiles 2022-07-03 15:16:46 UTC (rev 1243805) @@ -0,0 +1,3 @@ +d /var/lib/zigbee2mqtt 0750 zigbee2mqtt zigbee2mqtt +z /etc/zigbee2mqtt/configuration.yaml 0640 zigbee2mqtt zigbee2mqtt +L /var/lib/zigbee2mqtt/configuration.yaml - - - - /etc/zigbee2mqtt/configuration.yaml
