matterbridge 3.3.3-dev-20251014-c1b948a → 3.3.3-dev-20251015-19d1be8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +11 -0
- package/README-MACOS-PLIST.md +242 -0
- package/README-SERVICE.md +7 -1
- package/README.md +5 -5
- package/frontend/build/assets/index.js +4 -4
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -25,9 +25,20 @@ Advantages:
|
|
|
25
25
|
|
|
26
26
|
## [3.3.3] - Not released
|
|
27
27
|
|
|
28
|
+
### Added
|
|
29
|
+
|
|
30
|
+
- [thread]: Added timestamp to WorkerMessage.
|
|
31
|
+
- [macOS]: Added the [plist configuration guide](README-MACOS-PLIST.md).
|
|
32
|
+
|
|
28
33
|
### Changed
|
|
29
34
|
|
|
30
35
|
- [package]: Updated dependencies.
|
|
36
|
+
- [frontend]: Bumped `frontend` version to 3.2.2.
|
|
37
|
+
- [frontend]: Added update check on start.
|
|
38
|
+
- [frontend]: Added icon to update dev in the Header and removed the yellow badges.
|
|
39
|
+
- [frontend]: Added icon to update plugin latest and dev and removed the yellow badges.
|
|
40
|
+
- [frontend]: Added plugin Path in the Name Tooltip.
|
|
41
|
+
- [history]: Added external and array buffers to the history chart.
|
|
31
42
|
|
|
32
43
|
<a href="https://www.buymeacoffee.com/luligugithub">
|
|
33
44
|
<img src="bmc-button.svg" alt="Buy me a coffee" width="80">
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
# <img src="frontend/public/matterbridge.svg" alt="Matterbridge Logo" width="64px" height="64px"> Matterbridge launchctl configuration (macOS)
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/matterbridge)
|
|
4
|
+
[](https://www.npmjs.com/package/matterbridge)
|
|
5
|
+
[](https://hub.docker.com/r/luligu/matterbridge)
|
|
6
|
+
[](https://hub.docker.com/r/luligu/matterbridge)
|
|
7
|
+

|
|
8
|
+

|
|
9
|
+
[](https://codecov.io/gh/Luligu/matterbridge)
|
|
10
|
+
|
|
11
|
+
[](https://www.npmjs.com/package/matter-history)
|
|
12
|
+
[](https://www.npmjs.com/package/node-ansi-logger)
|
|
13
|
+
[](https://www.npmjs.com/package/node-persist-manager)
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# Advanced configuration
|
|
18
|
+
|
|
19
|
+
## Run matterbridge as system service with launchctl (macOS) and its own global node_modules directory
|
|
20
|
+
|
|
21
|
+
### Optional: cleanup all previous setups
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
sudo rm -rf ~/Matterbridge
|
|
25
|
+
sudo rm -rf ~/.matterbridge
|
|
26
|
+
sudo rm -rf ~/.mattercert
|
|
27
|
+
sudo rm -rf /usr/local/etc/matterbridge
|
|
28
|
+
sudo rm -f /Library/LaunchDaemons/matterbridge.plist
|
|
29
|
+
sudo rm -f /var/log/matterbridge.log /var/log/matterbridge.err
|
|
30
|
+
sudo npm uninstall matterbridge -g
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Verify node setup
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
node -v
|
|
37
|
+
npm -v
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
It should output something like:
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
v22.20.0
|
|
44
|
+
10.9.3
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Check node path
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
which node
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
It should output something like:
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
/usr/local/bin/node
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
In this case you will need in the step below to replace **_MYNODEPATH_** with /usr/local/bin
|
|
60
|
+
|
|
61
|
+
### First create the Matterbridge directories
|
|
62
|
+
|
|
63
|
+
This will create the required directories if they don't exist and install matterbridge in the matterbridge global node_modules directory
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
sudo mkdir -p /usr/local/etc/matterbridge
|
|
67
|
+
sudo mkdir -p /usr/local/etc/matterbridge/.npm-global
|
|
68
|
+
sudo mkdir -p /usr/local/etc/matterbridge/Matterbridge
|
|
69
|
+
sudo mkdir -p /usr/local/etc/matterbridge/.matterbridge
|
|
70
|
+
sudo mkdir -p /usr/local/etc/matterbridge/.mattercert
|
|
71
|
+
sudo chown -R root:wheel /usr/local/etc/matterbridge
|
|
72
|
+
sudo chown -R root:wheel /usr/local/etc/matterbridge/.npm-global
|
|
73
|
+
sudo chmod -R 755 /usr/local/etc/matterbridge/.npm-global
|
|
74
|
+
sudo NPM_CONFIG_PREFIX=/usr/local/etc/matterbridge/.npm-global npm install -g matterbridge --omit=dev
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Then create a system launchctl configuration file for Matterbridge
|
|
78
|
+
|
|
79
|
+
- create a launchctl configuration file for Matterbridge
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
sudo nano /Library/LaunchDaemons/matterbridge.plist
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
- add the following to the file, replacing **_MYNODEPATH_** with the path found in the step before:
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
89
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
90
|
+
<plist version="1.0">
|
|
91
|
+
<dict>
|
|
92
|
+
<key>EnvironmentVariables</key>
|
|
93
|
+
<dict>
|
|
94
|
+
<key>PATH</key>
|
|
95
|
+
<string>/usr/local/etc/matterbridge/.npm-global/bin:MYNODEPATH</string>
|
|
96
|
+
<key>NPM_CONFIG_PREFIX</key>
|
|
97
|
+
<string>/usr/local/etc/matterbridge/.npm-global</string>
|
|
98
|
+
<key>HOME</key>
|
|
99
|
+
<string>/var/root</string>
|
|
100
|
+
<key>NODE_PATH</key>
|
|
101
|
+
<string>/usr/local/etc/matterbridge/.npm-global/lib/node_modules</string>
|
|
102
|
+
</dict>
|
|
103
|
+
<key>KeepAlive</key>
|
|
104
|
+
<true/>
|
|
105
|
+
<key>Label</key>
|
|
106
|
+
<string>matterbridge</string>
|
|
107
|
+
<key>ProgramArguments</key>
|
|
108
|
+
<array>
|
|
109
|
+
<string>/usr/local/etc/matterbridge/.npm-global/bin/matterbridge</string>
|
|
110
|
+
<string>--homedir</string>
|
|
111
|
+
<string>/usr/local/etc/matterbridge</string>
|
|
112
|
+
<string>--service</string>
|
|
113
|
+
<string>--nosudo</string>
|
|
114
|
+
</array>
|
|
115
|
+
<key>RunAtLoad</key>
|
|
116
|
+
<true/>
|
|
117
|
+
<key>StandardErrorPath</key>
|
|
118
|
+
<string>/var/log/matterbridge.err</string>
|
|
119
|
+
<key>StandardOutPath</key>
|
|
120
|
+
<string>/var/log/matterbridge.log</string>
|
|
121
|
+
<key>WorkingDirectory</key>
|
|
122
|
+
<string>/usr/local/etc/matterbridge</string>
|
|
123
|
+
</dict>
|
|
124
|
+
</plist>
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
- stop matterbridge
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
sudo launchctl bootout system/matterbridge
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
- check the plist
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
sudo chown root:wheel /Library/LaunchDaemons/matterbridge.plist
|
|
137
|
+
sudo chmod 644 /Library/LaunchDaemons/matterbridge.plist
|
|
138
|
+
sudo plutil -lint /Library/LaunchDaemons/matterbridge.plist
|
|
139
|
+
sudo plutil -convert xml1 /Library/LaunchDaemons/matterbridge.plist
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
- bootstrap matterbridge and enable it
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
sudo rm -f /var/log/matterbridge.log /var/log/matterbridge.err
|
|
146
|
+
sudo launchctl bootstrap system /Library/LaunchDaemons/matterbridge.plist
|
|
147
|
+
sudo launchctl enable system/matterbridge
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Start Matterbridge
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
sudo launchctl kickstart -k system/matterbridge
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Stop Matterbridge
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
sudo launchctl bootout system/matterbridge
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Restart Matterbridge
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
sudo launchctl kickstart -k system/matterbridge
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
### Show Matterbridge status
|
|
169
|
+
|
|
170
|
+
```bash
|
|
171
|
+
sudo launchctl print system/matterbridge
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Show Matterbridge status (only essentials)
|
|
175
|
+
|
|
176
|
+
```bash
|
|
177
|
+
sudo launchctl print system/matterbridge | grep -E "pid|state"
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### Enable Matterbridge to start automatically on boot
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
sudo launchctl enable system/matterbridge
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Disable Matterbridge from starting automatically on boot
|
|
187
|
+
|
|
188
|
+
```bash
|
|
189
|
+
sudo launchctl disable system/matterbridge
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
### View the log of Matterbridge in real time (this will show the log with colors)
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
sudo tail -n 1000 -f /var/log/matterbridge.log /var/log/matterbridge.err
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### Automatically rotate logs (every 5 days or at 100 MB, keep 5 compressed backups)
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
sudo tee /etc/newsyslog.d/matterbridge.conf <<'EOF'
|
|
202
|
+
/var/log/matterbridge.log root:wheel 640 5 102400 5 Z
|
|
203
|
+
/var/log/matterbridge.err root:wheel 640 5 102400 5 Z
|
|
204
|
+
EOF
|
|
205
|
+
sudo newsyslog -v
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### Optional: remove the password prompt for sudo
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
sudo EDITOR=nano visudo
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
Add this line at the end of the file (replace USER with your macOS username):
|
|
215
|
+
|
|
216
|
+
```
|
|
217
|
+
USER ALL=(ALL) NOPASSWD: ALL
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
Save and validate syntax:
|
|
221
|
+
|
|
222
|
+
```bash
|
|
223
|
+
sudo visudo -c
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Optional: ask for password only each 60 minutes
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
sudo EDITOR=nano visudo
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Add (or edit) this line anywhere in the file:
|
|
233
|
+
|
|
234
|
+
```
|
|
235
|
+
Defaults timestamp_timeout = 60
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
Save and validate syntax:
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
sudo visudo -c
|
|
242
|
+
```
|
package/README-SERVICE.md
CHANGED
|
@@ -169,7 +169,7 @@ sudo systemctl restart systemd-journald
|
|
|
169
169
|
Run the following command to verify if you can install Matterbridge globally without being prompted for a password:
|
|
170
170
|
|
|
171
171
|
```bash
|
|
172
|
-
sudo npm install -g matterbridge
|
|
172
|
+
sudo npm install -g matterbridge --omit=dev
|
|
173
173
|
```
|
|
174
174
|
|
|
175
175
|
If you are not prompted for a password, no further action is required.
|
|
@@ -210,3 +210,9 @@ save the file and reload the settings with:
|
|
|
210
210
|
sudo chmod 0440 /etc/sudoers.d/matterbridge
|
|
211
211
|
sudo visudo -c
|
|
212
212
|
```
|
|
213
|
+
|
|
214
|
+
Verify if you can install Matterbridge globally without being prompted for a password:
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
sudo npm install -g matterbridge --omit=dev
|
|
218
|
+
```
|
package/README.md
CHANGED
|
@@ -84,7 +84,7 @@ Since Matter is designed as "a universal IPv6-based communication protocol for s
|
|
|
84
84
|
|
|
85
85
|
Avoid using VLAN and firewall blocking the communications between the controllers and Matterbridge.
|
|
86
86
|
|
|
87
|
-
To pair matterbridge, you need a matter enabled controller (Apple Home, Smart Things, Google Home, Alexa,
|
|
87
|
+
To pair matterbridge, you need a matter enabled controller (Apple Home, Smart Things, Google Home, Alexa, Home Assistant etc.).
|
|
88
88
|
|
|
89
89
|
## Installation
|
|
90
90
|
|
|
@@ -172,6 +172,10 @@ Config editor:
|
|
|
172
172
|
|
|
173
173
|
[Service configurations](README-SERVICE.md)
|
|
174
174
|
|
|
175
|
+
### Run matterbridge as a system service with launchctl (macOS only)
|
|
176
|
+
|
|
177
|
+
[Launchctl configurations](README-MACOS-PLIST.md)
|
|
178
|
+
|
|
175
179
|
### Run matterbridge with docker and docker compose
|
|
176
180
|
|
|
177
181
|
[Docker configurations](README-DOCKER.md)
|
|
@@ -180,10 +184,6 @@ Config editor:
|
|
|
180
184
|
|
|
181
185
|
[Podman configurations](README-PODMAN.md)
|
|
182
186
|
|
|
183
|
-
### Run matterbridge as a service on macOS with mb-service (by [Michael Ahern](https://github.com/michaelahern))
|
|
184
|
-
|
|
185
|
-
[Matterbridge Service Command for macOS](https://github.com/michaelahern/mb-service)
|
|
186
|
-
|
|
187
187
|
### Run matterbridge with nginx
|
|
188
188
|
|
|
189
189
|
[Nginx configurations](README-NGINX.md)
|