nix-community / yarn2nix

Generate nix expressions from a yarn.lock file [maintainer=???]
GNU General Public License v3.0
123 stars 61 forks source link

Bindings for nodejs package not built #124

Open makefu opened 4 years ago

makefu commented 4 years ago

Hi i am trying to package zigbee2mqtt: My current state is that i am able to build the whole thing, however when i start the tool i get the following error

~/tmp/zigbee2mqtt sudo CONFIGFILE=./conf.yaml result/bin/zigbee2mqtt                           
zigbee2mqtt:info  2020-01-06 02:21:31: Logging to console and directory: '/tmp/lol.log'
zigbee2mqtt:info  2020-01-06 02:21:31: Starting zigbee2mqtt version 1.8.0 (commit #unknown)
zigbee2mqtt:info  2020-01-06 02:21:31: Starting zigbee-herdsman...
zigbee2mqtt:error 2020-01-06 02:21:31: Error while starting zigbee-herdsman
zigbee2mqtt:error 2020-01-06 02:21:31: Failed to start zigbee
zigbee2mqtt:error 2020-01-06 02:21:31: Exiting...
zigbee2mqtt:error 2020-01-06 02:21:31: Error: Could not locate the bindings file. Tried:
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/build/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/build/Debug/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/build/Release/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/out/Debug/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/Debug/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/out/Release/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/Release/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/build/default/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/compiled/10.17.0/linux/x64/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node
 → /nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/lib/binding/node-v64-linux-x64/bindings.node
    at bindings (/nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/bindings/bindings.js:126:9)
    at Object.<anonymous> (/nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/lib/linux.js:2:36)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/nix/store/pa9lih2ix3g79jvg1zi32n6s2pkixzqd-zigbee2mqtt/libexec/zigbee2mqtt/node_modules/@serialport/bindings/lib/index.js:14:22)

my conf.yaml file:

homeassistant: false

permit_join: true

mqtt:
  base_topic: zigbee2mqtt
  server: 'mqtt://localhost'

serial:
  port: /dev/ttyACM3
advanced:
  log_directory: /tmp/lol.log

How can i get work around the issue or fix the problem? I am very new to packaging nodejs and i am unsure how to proceed.

EDIT: i've uploaded my branch with nix support files and my changes to https://github.com/makefu/zigbee2mqtt

Cheers!