You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is the successor of the python matter server. There is already a script in VE for the python matter server, but as the repo is now maintenance (See README.MD) only, i wanted to start testing the new JS based server.
The new matterjs-server is still in beta but has official GH releases. So far there have been a couple of updates that required data migration but since the server handles the migration during startup, the was no need for manual intervention. Therefore i don't think that the jump from v0.x to v1 will break the script.
From what i've read, the new server is still undergoing CSA certification which is the reason why they didn't release a v1 yet.
The repo itself does not have many start yet (~150) but as it's the official successor of the python server, maybe we can let it slide 😄
I already wrote a working script for this but i've got two things to discuss:
For Matter-over-Thread to work, IPv6 is needed. In order to make RA (Route Advertisement) work, i needed to add RIO (Route Information Options) to the network conf. Without them, the LXC won't know what IP the Thread Border Router hat or how to reach it. Sounds more complicated than it is to implement but should we configure then always or just if the user chooses to enable IPv6? Right now, i always configure then since the don't get used anyway if the user disabled IPv6 during LXC creation but if the user later enables IPv6, RA with RIO will work.
There is a official npm package for the matterjs-server. Should we use that or build the server from source? Currently i build the server from source but that way the UI shows no version information: matter-server/0.0.0-git (matter.js/0.17.0-alpha.0-20260518-7f13c7285) instead of matter-server/0.7.0 (matter.js/0.17.0-alpha.0-20260518-7f13c7285)
npm vs. from source: Using the npm package as recommended by tremor021 is better then BfS
IPv6/RIO: Document this as an info note in the JSON. The RIO configuration in the LXC network is the responsibility of the Proxmox host (Installer), not the installation script — the script itself does not need to do anything
i prepared you the script, because its quite simple. checkout and done :D
Regarding RIO: I don't quite get how the PVE host controls this config 😆 I took reference at the matter-server-install.sh script from VE. There we also create a custom config (just something IPv4 related) to enable a feature in the LXC.
My initial script for the matterjs-server included this:
@MickLesk I looked up how to configure those sysctl options from outside the lxc. It seems like the only option would be to configure it on the host itself. But that way all LXCs would inherit it. Setting the options inside the LXC conf does not work as lxc.sysctl.net.* keys are not allowed there.
Before switching to a VM, can you elaborate what we don't want those sysctl settings in the LXC? As far i a read, network settings are namespaced in unprivileged LXCs and should not cause any problems with the Host (Kernel).
We also do it in matter-server 😄
RA itself is activated in the host kerne by default. Only RIO must be enabled "manually" in the LXC. But since it's namespaced, it won't provision to the host kernel.
My PVE host:
Activity
tomfrenzel commentedon May 20, 2026
I already wrote a working script for this but i've got two things to discuss:
matter-server/0.0.0-git (matter.js/0.17.0-alpha.0-20260518-7f13c7285)instead ofmatter-server/0.7.0 (matter.js/0.17.0-alpha.0-20260518-7f13c7285)tremor021 commentedon May 20, 2026
MickLesk commentedon May 20, 2026
npm vs. from source: Using the npm package as recommended by tremor021 is better then BfS
IPv6/RIO: Document this as an info note in the JSON. The RIO configuration in the LXC network is the responsibility of the Proxmox host (Installer), not the installation script — the script itself does not need to do anything
i prepared you the script, because its quite simple. checkout and done :D
tomfrenzel commentedon May 20, 2026
Sounds good! I'll test the script and get back to you
tomfrenzel commentedon May 20, 2026
Regarding RIO: I don't quite get how the PVE host controls this config 😆 I took reference at the matter-server-install.sh script from VE. There we also create a custom config (just something IPv4 related) to enable a feature in the LXC.
My initial script for the matterjs-server included this:
I feel like that's too much for a info note in the JSON 😄
tomfrenzel commentedon May 20, 2026
@MickLesk I looked up how to configure those sysctl options from outside the lxc. It seems like the only option would be to configure it on the host itself. But that way all LXCs would inherit it. Setting the options inside the LXC conf does not work as
lxc.sysctl.net.*keys are not allowed there.MickLesk commentedon May 20, 2026
Then its May better as VM. We dont wanna modify Hosts
tomfrenzel commentedon May 20, 2026
Before switching to a VM, can you elaborate what we don't want those sysctl settings in the LXC? As far i a read, network settings are namespaced in unprivileged LXCs and should not cause any problems with the Host (Kernel).
We also do it in matter-server 😄
MickLesk commentedon May 21, 2026
that is inside the lxc, not on the host?
tomfrenzel commentedon May 21, 2026
Yes
tomfrenzel commentedon May 21, 2026
RA itself is activated in the host kerne by default. Only RIO must be enabled "manually" in the LXC. But since it's namespaced, it won't provision to the host kernel.
My PVE host:
matterjs-server LXC:
tomfrenzel commentedon May 22, 2026
Now that the PR got merged, the script is ready to be tested in my opinion
tomfrenzel commentedon May 30, 2026
@MickLesk is there anything that speaks against this?
I've got the LXC running for a week now and so far everything is working as expected
10 remaining items
r4h1mfr commentedon Jun 4, 2026
Hi,
Just to tell that it's working fine on my side
tomfrenzel commentedon Jun 4, 2026
@MickLesk Do we want to start the migration to VE? For me the
matterjs-serverhas been running flawlesslyMickLesk commentedon Jun 4, 2026
I Take a final Look later
r4h1mfr commentedon Jun 4, 2026
@tomfrenzel hi, have you seen my report about otbr lxc that is not starting automatically on lxc reboot?
community-scripts/ProxmoxVE#14621 (comment)
tomfrenzel commentedon Jun 4, 2026
Sorry, didn't get a notification for that. I'll take a look 😉
r4h1mfr commentedon Jun 4, 2026
Thanks a lot 👍
github-actions commentedon Jun 5, 2026
A PR has been created for matterjs-server: community-scripts/ProxmoxVE#14951
michelroegl-brunner commentedon Jun 5, 2026
Merged with #14951 in ProxmoxVE
github-actions commentedon Jun 5, 2026
Files deleted with PR #1895