Hi, for the 5.0 release, the Matter Binding requires a version of nodejs (18.1+) in order to operate. If not found, the binding will download an official binary on windows, mac and relatively recent Linux versions. Unfortunately this does not work on Alpine due to libc dependencies, and so there is not a NodeJS distro we can download and run.
@wborn i wanted to get your thoughts here on options. Installing nodejs/npm will increase the distro size on alpine by ~30–50 MB and if we did the same on Debian, it might be ~22–30 MB. This would be the easiest and most foolproof way forward, but of course increases the size for everyone.
If there are alternative ideas i would love to hear them. I have a couple thoughts as i type this.
It would be great if we could "apt get" / "apk add" the package at runtime, but since the openHAB process is not run under root, i can't do that from the binding.
One thought is to use a script a boot up to see if matter is installed and install nodejs before starting openHAB, but this would require a restart after installing the binding.
Another option might be if there is something we could set or call from openHAB that would be picked up by a script looking/watching for it that would install the package as root? Maybe we could use this to create a white list of packages that bindings are allowed to install using some mechanism (so send a package name to a local pipe or file, this would be picked up by a watcher that checks if the package is allowed, and installs it)
I think the Matter binding is going to be very, very popular in the coming months and years, and i think we need a way to support it out of the box with our docker distros.
Hi, for the 5.0 release, the Matter Binding requires a version of nodejs (18.1+) in order to operate. If not found, the binding will download an official binary on windows, mac and relatively recent Linux versions. Unfortunately this does not work on Alpine due to libc dependencies, and so there is not a NodeJS distro we can download and run.
@wborn i wanted to get your thoughts here on options. Installing nodejs/npm will increase the distro size on alpine by ~30–50 MB and if we did the same on Debian, it might be ~22–30 MB. This would be the easiest and most foolproof way forward, but of course increases the size for everyone.
If there are alternative ideas i would love to hear them. I have a couple thoughts as i type this.
It would be great if we could "apt get" / "apk add" the package at runtime, but since the openHAB process is not run under root, i can't do that from the binding.
One thought is to use a script a boot up to see if matter is installed and install nodejs before starting openHAB, but this would require a restart after installing the binding.
Another option might be if there is something we could set or call from openHAB that would be picked up by a script looking/watching for it that would install the package as root? Maybe we could use this to create a white list of packages that bindings are allowed to install using some mechanism (so send a package name to a local pipe or file, this would be picked up by a watcher that checks if the package is allowed, and installs it)
I think the Matter binding is going to be very, very popular in the coming months and years, and i think we need a way to support it out of the box with our docker distros.