Problem installed Zigbee2MQTT in Openhabian

I’m having difficulty installing Zigbee2MQTT on openhabian for the first time (Openhabian has been running successfully for ages on this Raspberry Pi 3B+). I’ve selected the Main branch and I’ve done Upgrade System in openhabian-config , and the About openHABian option says that I’m running these versions:

openHABian Configuration Tool — [main]{2022-10-18T00:22:48+02:00}(fb3be90) 
openHAB 3.3.0 - Release Build

Then I went to Optional Components and installed Mosquitto with no problem, then back to Optional Components to install Zigbee2MQTT and it fails with this:

2022-10-17_23:14:43_BST [openHABian] Downloading Zigbee2MQTT... /usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110
class SocksProxyAgent extends agent_base_1.Agent {
                                           ^

TypeError: Class extends value undefined is not a constructor or null
    at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110:44)
    at Module._compile (node:internal/modules/cjs/loader:1126:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1180:10)
    at Module.load (node:internal/modules/cjs/loader:1004:32)
    at Function.Module._load (node:internal/modules/cjs/loader:839:12)
    at Module.require (node:internal/modules/cjs/loader:1028:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/agent.js:174:29)
    at Module._compile (node:internal/modules/cjs/loader:1126:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1180:10)
    at Module.load (node:internal/modules/cjs/loader:1004:32)
    at Function.Module._load (node:internal/modules/cjs/loader:839:12)
    at Module.require (node:internal/modules/cjs/loader:1028:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/remote.js:7:18)
    at Module._compile (node:internal/modules/cjs/loader:1126:14)

OK
2022-10-17_23:15:31_BST [openHABian] Creating log directory... OK
2022-10-17_23:15:31_BST [openHABian] Zigbee2MQTT install & config... FAILED (npm install)

Any thoughts on whether I’m doing this the wrong way or how I can get this working? Or is there further debug/diagnostics I can collect? The problem appears to be repeatable for me (although I have to manually delete bits of the failed install to get back to the starting point because the menu option for deleting Zigbee2MQTT doesn’t cope with deleting this failed-to-install installation).

Kind regards,
Andrew

Let’s check manually.
Could you please type in you shell:

cd /opt/zigbee2mqtt
npm ci

Thanks for replying.

Ok, that’s verbose with lots of warnings about version numbers… as follows:

openhabian@openhab:~ $ cd /opt/zigbee2mqtt/
openhabian@openhab:/opt/zigbee2mqtt $ pwd
/opt/zigbee2mqtt
openhabian@openhab:/opt/zigbee2mqtt $ whoami
openhabian
openhabian@openhab:/opt/zigbee2mqtt $ npm ci
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@eslint/eslintrc@1.3.2',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/console@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/core@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/environment@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/expect@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/expect-utils@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/fake-timers@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/globals@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/reporters@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/schemas@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/source-map@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/test-result@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/test-sequencer@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/transform@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@jest/types@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/eslint-plugin@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/parser@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/scope-manager@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/type-utils@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/types@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/typescript-estree@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/utils@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@typescript-eslint/visitor-keys@5.38.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'babel-jest@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'babel-plugin-jest-hoist@29.0.2',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'babel-preset-jest@29.0.2',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'diff-sequences@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint@8.24.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jest@27.0.4',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-visitor-keys@3.3.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-scope@7.1.1',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'espree@9.4.0',
npm WARN EBADENGINE   required: { node: '^12.22.0 || ^14.17.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'expect@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-changed-files@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-circus@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-cli@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-config@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-diff@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-docblock@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-each@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-environment-node@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-get-type@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-haste-map@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-leak-detector@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-matcher-utils@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-message-util@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-mock@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-regex-util@29.0.0',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-resolve@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-resolve-dependencies@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-runner@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-runtime@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-snapshot@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-util@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-validate@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-watcher@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'jest-worker@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'pretty-format@29.0.3',
npm WARN EBADENGINE   required: { node: '^14.15.0 || ^16.10.0 || >=18.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'write-file-atomic@4.0.2',
npm WARN EBADENGINE   required: { node: '^12.13.0 || ^14.15.0 || >=16.0.0' },
npm WARN EBADENGINE   current: { node: 'v15.4.0', npm: '7.0.15' }
npm WARN EBADENGINE }

added 836 packages, and audited 836 packages in 2m

90 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
npm notice 
npm notice New major version of npm available! 7.0.15 -> 8.19.2
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.19.2
npm notice Run npm install -g npm@8.19.2 to update!
npm notice 
openhabian@openhab:/opt/zigbee2mqtt $  


So… it’s done something with lots of warnings.

In the hope that I can ignore the warnings for now, I’ve manually stepped through the rest of the Zigbee2MQTT install process from /opt/openhabian/functions/nodejs-apps.bash and when I get to the last part and do this:

sudo  systemctl enable --now zigbee2mqtt.service

while also running

tail -f /var/log/syslog &

I get errors similar to the ones from my initial post:

openhabian@openhab:~ $ sudo systemctl -q daemon-reload
Oct 19 10:27:56 openhab systemd[1]: Reloading.
Oct 19 10:27:57 openhab systemd[1]: /lib/systemd/system/smbd.service:9: PIDFile= references path below legacy directory /var/run/, updating /var/run/samba/smbd.pid → /run/samba/smbd.pid; please update the unit file accordingly.
Oct 19 10:27:57 openhab systemd[1]: /lib/systemd/system/nmbd.service:9: PIDFile= references path below legacy directory /var/run/, updating /var/run/samba/nmbd.pid → /run/samba/nmbd.pid; please update the unit file accordingly.
openhabian@openhab:~ $ sudo  systemctl enable --now zigbee2mqtt.service
Oct 19 10:28:20 openhab systemd[1]: Reloading.
Oct 19 10:28:20 openhab systemd[1]: /lib/systemd/system/smbd.service:9: PIDFile= references path below legacy directory /var/run/, updating /var/run/samba/smbd.pid → /run/samba/smbd.pid; please update the unit file accordingly.
Oct 19 10:28:20 openhab systemd[1]: /lib/systemd/system/nmbd.service:9: PIDFile= references path below legacy directory /var/run/, updating /var/run/samba/nmbd.pid → /run/samba/nmbd.pid; please update the unit file accordingly.
Oct 19 10:28:21 openhab systemd[1]: Started Zigbee2MQTT.
openhabian@openhab:~ $ Oct 19 10:28:22 openhab npm[25590]: /usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110
Oct 19 10:28:22 openhab npm[25590]: class SocksProxyAgent extends agent_base_1.Agent {
Oct 19 10:28:22 openhab npm[25590]:                                            ^
Oct 19 10:28:22 openhab npm[25590]: TypeError: Class extends value undefined is not a constructor or null
Oct 19 10:28:22 openhab npm[25590]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110:44)
Oct 19 10:28:22 openhab npm[25590]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:22 openhab npm[25590]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:22 openhab npm[25590]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:22 openhab npm[25590]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:22 openhab npm[25590]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:22 openhab npm[25590]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:22 openhab npm[25590]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/agent.js:174:29)
Oct 19 10:28:22 openhab npm[25590]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:22 openhab npm[25590]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:22 openhab npm[25590]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:22 openhab npm[25590]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:22 openhab npm[25590]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:22 openhab npm[25590]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:22 openhab npm[25590]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/remote.js:7:18)
Oct 19 10:28:22 openhab npm[25590]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:22 openhab systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Oct 19 10:28:22 openhab systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Oct 19 10:28:22 openhab systemd[1]: zigbee2mqtt.service: Service RestartSec=100ms expired, scheduling restart.
Oct 19 10:28:22 openhab systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 1.
Oct 19 10:28:22 openhab systemd[1]: Stopped Zigbee2MQTT.
Oct 19 10:28:22 openhab systemd[1]: Started Zigbee2MQTT.
Oct 19 10:28:24 openhab npm[25597]: /usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110
Oct 19 10:28:24 openhab npm[25597]: class SocksProxyAgent extends agent_base_1.Agent {
Oct 19 10:28:24 openhab npm[25597]:                                            ^
Oct 19 10:28:24 openhab npm[25597]: TypeError: Class extends value undefined is not a constructor or null
Oct 19 10:28:24 openhab npm[25597]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110:44)
Oct 19 10:28:24 openhab npm[25597]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:24 openhab npm[25597]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:24 openhab npm[25597]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:24 openhab npm[25597]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:24 openhab npm[25597]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:24 openhab npm[25597]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:24 openhab npm[25597]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/agent.js:174:29)
Oct 19 10:28:24 openhab npm[25597]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:24 openhab npm[25597]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:24 openhab npm[25597]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:24 openhab npm[25597]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:24 openhab npm[25597]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:24 openhab npm[25597]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:24 openhab npm[25597]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/remote.js:7:18)
Oct 19 10:28:24 openhab npm[25597]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:24 openhab systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Oct 19 10:28:24 openhab systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Oct 19 10:28:24 openhab systemd[1]: zigbee2mqtt.service: Service RestartSec=100ms expired, scheduling restart.
Oct 19 10:28:24 openhab systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 2.
Oct 19 10:28:24 openhab systemd[1]: Stopped Zigbee2MQTT.
Oct 19 10:28:24 openhab systemd[1]: Started Zigbee2MQTT.
Oct 19 10:28:26 openhab npm[25605]: /usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110
Oct 19 10:28:26 openhab npm[25605]: class SocksProxyAgent extends agent_base_1.Agent {
Oct 19 10:28:26 openhab npm[25605]:                                            ^
Oct 19 10:28:26 openhab npm[25605]: TypeError: Class extends value undefined is not a constructor or null
Oct 19 10:28:26 openhab npm[25605]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110:44)
Oct 19 10:28:26 openhab npm[25605]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:26 openhab npm[25605]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:26 openhab npm[25605]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:26 openhab npm[25605]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:26 openhab npm[25605]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:26 openhab npm[25605]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:26 openhab npm[25605]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/agent.js:174:29)
Oct 19 10:28:26 openhab npm[25605]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:26 openhab npm[25605]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:26 openhab npm[25605]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:26 openhab npm[25605]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:26 openhab npm[25605]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:26 openhab npm[25605]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:26 openhab npm[25605]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/remote.js:7:18)
Oct 19 10:28:26 openhab npm[25605]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:26 openhab systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Oct 19 10:28:26 openhab systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Oct 19 10:28:26 openhab systemd[1]: zigbee2mqtt.service: Service RestartSec=100ms expired, scheduling restart.
Oct 19 10:28:26 openhab systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 3.
Oct 19 10:28:26 openhab systemd[1]: Stopped Zigbee2MQTT.
Oct 19 10:28:26 openhab systemd[1]: Started Zigbee2MQTT.
Oct 19 10:28:27 openhab npm[25613]: /usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110
Oct 19 10:28:27 openhab npm[25613]: class SocksProxyAgent extends agent_base_1.Agent {
Oct 19 10:28:27 openhab npm[25613]:                                            ^
Oct 19 10:28:27 openhab npm[25613]: TypeError: Class extends value undefined is not a constructor or null
Oct 19 10:28:27 openhab npm[25613]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110:44)
Oct 19 10:28:27 openhab npm[25613]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:27 openhab npm[25613]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:27 openhab npm[25613]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:27 openhab npm[25613]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:27 openhab npm[25613]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:27 openhab npm[25613]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:27 openhab npm[25613]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/agent.js:174:29)
Oct 19 10:28:27 openhab npm[25613]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:27 openhab npm[25613]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:27 openhab npm[25613]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:27 openhab npm[25613]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:27 openhab npm[25613]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:27 openhab npm[25613]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:27 openhab npm[25613]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/remote.js:7:18)
Oct 19 10:28:27 openhab npm[25613]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:27 openhab systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Oct 19 10:28:27 openhab systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Oct 19 10:28:28 openhab systemd[1]: zigbee2mqtt.service: Service RestartSec=100ms expired, scheduling restart.
Oct 19 10:28:28 openhab systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 4.
Oct 19 10:28:28 openhab systemd[1]: Stopped Zigbee2MQTT.
Oct 19 10:28:28 openhab systemd[1]: Started Zigbee2MQTT.
Oct 19 10:28:29 openhab npm[25620]: /usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110
Oct 19 10:28:29 openhab npm[25620]: class SocksProxyAgent extends agent_base_1.Agent {
Oct 19 10:28:29 openhab npm[25620]:                                            ^
Oct 19 10:28:29 openhab npm[25620]: TypeError: Class extends value undefined is not a constructor or null
Oct 19 10:28:29 openhab npm[25620]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/socks-proxy-agent/dist/index.js:110:44)
Oct 19 10:28:29 openhab npm[25620]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:29 openhab npm[25620]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:29 openhab npm[25620]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:29 openhab npm[25620]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:29 openhab npm[25620]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:29 openhab npm[25620]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:29 openhab npm[25620]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/agent.js:174:29)
Oct 19 10:28:29 openhab npm[25620]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:29 openhab npm[25620]:     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1209:10)
Oct 19 10:28:29 openhab npm[25620]:     at Module.load (node:internal/modules/cjs/loader:1033:32)
Oct 19 10:28:29 openhab npm[25620]:     at Function.Module._load (node:internal/modules/cjs/loader:868:12)
Oct 19 10:28:29 openhab npm[25620]:     at Module.require (node:internal/modules/cjs/loader:1057:19)
Oct 19 10:28:29 openhab npm[25620]:     at require (node:internal/modules/cjs/helpers:103:18)
Oct 19 10:28:29 openhab npm[25620]:     at Object.<anonymous> (/usr/lib/node_modules/npm/node_modules/make-fetch-happen/lib/remote.js:7:18)
Oct 19 10:28:29 openhab npm[25620]:     at Module._compile (node:internal/modules/cjs/loader:1155:14)
Oct 19 10:28:29 openhab systemd[1]: zigbee2mqtt.service: Main process exited, code=exited, status=1/FAILURE
Oct 19 10:28:29 openhab systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Oct 19 10:28:29 openhab systemd[1]: zigbee2mqtt.service: Service RestartSec=100ms expired, scheduling restart.
Oct 19 10:28:29 openhab systemd[1]: zigbee2mqtt.service: Scheduled restart job, restart counter is at 5.
Oct 19 10:28:29 openhab systemd[1]: Stopped Zigbee2MQTT.
Oct 19 10:28:29 openhab systemd[1]: zigbee2mqtt.service: Start request repeated too quickly.
Oct 19 10:28:29 openhab systemd[1]: zigbee2mqtt.service: Failed with result 'exit-code'.
Oct 19 10:28:29 openhab systemd[1]: Failed to start Zigbee2MQTT.
^C
openhabian@openhab:~ $ 

Is updating npm from 7.0.15 to 8.19.2 worth a try? running “Upgrade System” from openhabian-config doesn’t pick this up, but I could try that from the shell.

Kind regards,
Andrew

Your node-version seems to be too old.
Did you do “upgrade System” in main-menu of openhabian-config?

Yes I did a system upgrade before I started. Doing it again now doesn’t want to install anything new, but with a few packages kept back:

openhabian@openhab:~ $ sudo openhabian-config 
[sudo] password for openhabian: 
2022-10-19_11:56:26_BST [openHABian] Checking for root privileges... OK
2022-10-19_11:56:26_BST [openHABian] Loading configuration file '/etc/openhabian.conf'... OK
2022-10-19_11:56:26_BST [openHABian] openHABian configuration tool version: [main]{2022-10-18T00:22:48+02:00}(fb3be90)
2022-10-19_11:56:26_BST [openHABian] Checking for changes in origin branch main... OK
2022-10-19_11:56:27_BST [openHABian] Switching to branch main... OK
2022-10-19_11:56:27_BST [openHABian] Adding slightly tuned bash configuration files to system... OK
2022-10-19_11:56:31_BST [openHABian] Updating Linux package information... OK
2022-10-19_11:56:33_BST [openHABian] Updating repositories and upgrading installed packages...
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  binutils binutils-arm-linux-gnueabihf binutils-common libbinutils rpi-eeprom rpi-eeprom-images
0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded.
2022-10-19_11:56:39_BST [openHABian] Checking for default openHABian username:password combination... OK
2022-10-19_11:56:39_BST [openHABian] We hope you got what you came for! See you again soon ;)
openhabian@openhab:~ $ 

Looking another way:

openhabian@openhab:~ $ node -v
v15.4.0
openhabian@openhab:~ $ npm -v
7.0.15
openhabian@openhab:~ $ apt list --upgradable
Listing... Done
binutils-arm-linux-gnueabihf/oldstable 2.31.1-16+rpi2 armhf [upgradable from: 2.31.1-16+rpi1]
binutils-common/oldstable 2.31.1-16+rpi2 armhf [upgradable from: 2.31.1-16+rpi1]
binutils/oldstable 2.31.1-16+rpi2 armhf [upgradable from: 2.31.1-16+rpi1]
libbinutils/oldstable 2.31.1-16+rpi2 armhf [upgradable from: 2.31.1-16+rpi1]
rpi-eeprom-images/oldstable 13.12-1~buster all [upgradable from: 4.0-1]
rpi-eeprom/oldstable 13.12-1~buster armhf [upgradable from: 4.0-1]
openhabian@openhab:~ $ 
openhabian@openhab:~ $ apt show node
Package: node
Version: 0.3.2-7.4
Priority: optional
Section: hamradio
Maintainer: Debian Hamradio Maintainers <debian-hams@lists.debian.org>
Installed-Size: 38.9 kB
Depends: ax25-node
Conflicts: nodejs-legacy
Tag: hardware::hamradio, role::program
Download-Size: 2,784 B
APT-Sources: http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
Description: Amateur Packet Radio Node program (transitional package)
 The existing node package has been renamed to ax25-node. This transitional
 package exists to ease the upgrade path for existing users.

openhabian@openhab:~ $ 

Should I consider doing something like:

sudo apt remove node && sudo apt install node

?

Perhaps relevant:

openhabian@openhab:~ $ apt -a show nodejs
Package: nodejs
Version: 16.18.0-deb-1nodesource1
Priority: optional
Section: web
Maintainer: Ivan Iguaran <ivan@nodesource.com>
Installed-Size: 120 MB
Provides: nodejs-dev, nodejs-doc, nodejs-legacy, npm
Depends: libatomic1 (>= 4.8), libc6 (>= 2.17), libgcc1 (>= 1:3.5), libstdc++6 (>= 5.2), python3-minimal, ca-certificates
Conflicts: nodejs-dev, nodejs-doc, nodejs-legacy, npm
Replaces: nodejs-dev (<= 0.8.22), nodejs-legacy, npm (<= 1.2.14)
Homepage: https://nodejs.org
Download-Size: 24.2 MB
APT-Manual-Installed: yes
APT-Sources: https://deb.nodesource.com/node_16.x buster/main armhf Packages
Description: Node.js event-based server-side javascript engine
 Node.js is similar in design to and influenced by systems like
 Ruby's Event Machine or Python's Twisted.
 .
 It takes the event model a bit further - it presents the event
 loop as a language construct instead of as a library.
 .
 Node.js is bundled with several useful libraries to handle server tasks :
 System, Events, Standard I/O, Modules, Timers, Child Processes, POSIX,
 HTTP, Multipart Parsing, TCP, DNS, Assert, Path, URL, Query Strings.

Package: nodejs
Version: 10.24.0~dfsg-1~deb10u2
Priority: optional
Section: javascript
Maintainer: Debian Javascript Maintainers <pkg-javascript-devel@lists.alioth.debian.org>
Installed-Size: 154 kB
Depends: libatomic1 (>= 4.8), libbrotli1 (>= 0.6.0), libc-ares2 (>= 1.7.0), libc6 (>= 2.4), libgcc1 (>= 1:3.0), libicu63 (>= 63.1-1~), libnode64 (= 10.24.0~dfsg-1~deb10u2), libssl1.1 (>= 1.1.0), libstdc++6 (>= 4.1.1), libuv1 (>= 1.20.0~), zlib1g (>= 1:1.1.4)
Recommends: ca-certificates, nodejs-doc
Suggests: npm
Conflicts: nodejs-legacy
Replaces: nodejs-legacy
Homepage: http://nodejs.org/
Download-Size: 87.8 kB
APT-Sources: http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
Description: evented I/O for V8 javascript - runtime executable
 Node.js is a platform built on Chrome's JavaScript runtime for easily
 building fast, scalable network applications. Node.js uses an
 event-driven, non-blocking I/O model that makes it lightweight and
 efficient, perfect for data-intensive real-time applications that run
 across distributed devices.
 .
 Node.js is bundled with several useful libraries to handle server
 tasks:
 .
 System, Events, Standard I/O, Modules, Timers, Child Processes, POSIX,
 HTTP, Multipart Parsing, TCP, DNS, Assert, Path, URL, Query Strings.

openhabian@openhab:~ $ 

edit to add…
Also… looking more closely at where this version of node came from:

openhabian@openhab:~ $ which node
/home/openhabian/.nvm/versions/node/v15.4.0/bin/node
openhabian@openhab:~ $ which npm
/home/openhabian/.nvm/versions/node/v15.4.0/bin/npm

openhabian@openhab:~ $ ls -l /home/openhabian/.nvm/versions/node/v15.4.0/bin/
total 67836
lrwxrwxrwx 1 openhabian openhabian       41 Dec 13  2020 anyproxy -> ../lib/node_modules/anyproxy/bin/anyproxy
lrwxrwxrwx 1 openhabian openhabian       44 Dec 13  2020 anyproxy-ca -> ../lib/node_modules/anyproxy/bin/anyproxy-ca
lrwxrwxrwx 1 openhabian openhabian       39 Dec 13  2020 forever -> ../lib/node_modules/forever/bin/forever
lrwxrwxrwx 1 openhabian openhabian       55 Dec 13  2020 forever-service -> ../lib/node_modules/forever-service/bin/forever-service
lrwxrwxrwx 1 openhabian openhabian       58 Dec 13  2020 get-forever-config -> ../lib/node_modules/forever-service/bin/get-forever-config
-rwxr-xr-x 1 openhabian openhabian 69462072 Dec  9  2020 node
lrwxrwxrwx 1 openhabian openhabian       38 Dec  9  2020 npm -> ../lib/node_modules/npm/bin/npm-cli.js
lrwxrwxrwx 1 openhabian openhabian       38 Dec  9  2020 npx -> ../lib/node_modules/npm/bin/npx-cli.js
lrwxrwxrwx 1 openhabian openhabian       38 Dec 13  2020 tuya-cli -> ../lib/node_modules/@tuyapi/cli/cli.js
openhabian@openhab:~ $ cd /home/openhabian/.nvm/versions/node/v15.4.0/bin/
openhabian@openhab:~/.nvm/versions/node/v15.4.0/bin $ cd ../lib/node_modules/npm/bin
openhabian@openhab:~/.nvm/versions/node/v15.4.0/lib/node_modules/npm/bin $ ls -l
total 28
drwxr-xr-x 2 openhabian openhabian 4096 Dec  9  2020 node-gyp-bin
-rwxr-xr-x 1 openhabian openhabian  893 Apr 17  2020 npm
-rwxr-xr-x 1 openhabian openhabian   54 Nov 17  2020 npm-cli.js
-rwxr-xr-x 1 openhabian openhabian  483 Nov 17  2020 npm.cmd
-rwxr-xr-x 1 openhabian openhabian 1028 Nov 17  2020 npx
-rwxr-xr-x 1 openhabian openhabian 2815 Nov 17  2020 npx-cli.js
-rwxr-xr-x 1 openhabian openhabian  539 Nov 17  2020 npx.cmd
openhabian@openhab:~/.nvm/versions/node/v15.4.0/lib/node_modules/npm/bin $ 


Those dates pre-date (just) openhab3.0 release date… so it looks like the upgrade from 2.5 (or whatever it was) to 3.something (I might’ve skipped 3.0 and gone straight to 3.1) didn’t upgrade this. Does that sound plausible?

I think I’ve been careful not to dive under the hood on this server (with the exception of making USB ports persistent via simlinks), instead preferring to let openhabian-config do all the work so that it doesn’t get confused by manual changes, so I’m not sure why this didn’t/hasn’t/doesn’t upgrade but that’s probably how old it is.

And… by extension… I wonder what else might not have updated that I’ve never noticed before.

I have a spare SD card… so I’m tempted to take a config backup, install openhabian from scratch onto the new SD card, import the config, and see if that cures this… unless anyone has a better idea.

Edit to add…
Yes that was the trick… fresh install, import saved config, change branch to main and add a few optional things from openhabian-config including Mosquitto, then install Zigbee2MQTT… and it installed just fine.

Glad it worked. Node can be quite tricky regarding the versions. My other proposal would be to use nvm, so that you can have several versions of node installed in parallel.
Which version is installed in a clean setup? Is it still 16.17? (current is 19).
Maybe we should update that to use a newer version?

I’m impressed how well it worked. That’s one of the smoothest “backup config; upgrade/reinstall; import config” things I’ve ever had to do.

Node is currently this version (but I have already done an Upgrade System and I didn’t watch to see if it upgraded this).

openhabian@openhab:~ $ node -v
v16.18.0

Thanks for your help in debugging this with me… much appreciated.

Glad I could help. If you have a problem with zigbee2mqtt installation in openhabian just raise an issue in github.