mb-service-linux 1.0.1-dev-20260210-7cfdbac → 1.0.2
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 +22 -0
- package/dist/module.js +1 -83
- package/npm-shrinkwrap.json +3 -3
- package/package.json +8 -3
- package/dist/module.d.ts +0 -30
- package/dist/module.d.ts.map +0 -1
- package/dist/module.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -19,6 +19,28 @@ If you like this project and find it useful, please consider giving it a star on
|
|
|
19
19
|
|
|
20
20
|
<a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/assets/bmc-button.svg" alt="Buy me a coffee" width="120"></a>
|
|
21
21
|
|
|
22
|
+
## [1.0.2] - 2026-03-27
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
|
|
26
|
+
- [package]: Update dependencies.
|
|
27
|
+
- [package]: Update actions versions in workflows.
|
|
28
|
+
- [package]: Bump package to `automator` v.3.1.4.
|
|
29
|
+
- [package]: Bump `typescript` to v.6.0.2.
|
|
30
|
+
- [package]: Bump `typescript-eslint` to v.8.57.2.
|
|
31
|
+
- [package]: Bump `eslint` to v.10.1.0.
|
|
32
|
+
- [package]: Add `type checking` script for Jest tests.
|
|
33
|
+
- [package]: Add `CODE_OF_CONDUCT.md`.
|
|
34
|
+
- [package]: Add `@eslint/json`.
|
|
35
|
+
- [package]: Add `@eslint/markdown`.
|
|
36
|
+
- [package]: Add `CONTRIBUTING.md`.
|
|
37
|
+
- [package]: Add `STYLEGUIDE.md`.
|
|
38
|
+
- [package]: Replace `eslint-plugin-import` with `eslint-plugin-simple-import-sort`.
|
|
39
|
+
- [devcontainer]: Update `Dev Container` configuration.
|
|
40
|
+
- [devcontainer]: Add `postStartCommand` to the Dev Container configuration.
|
|
41
|
+
|
|
42
|
+
<a href="https://www.buymeacoffee.com/luligugithub"><img src="https://matterbridge.io/assets/bmc-button.svg" alt="Buy me a coffee" width="80"></a>
|
|
43
|
+
|
|
22
44
|
## [1.0.1] - 2026-02-10
|
|
23
45
|
|
|
24
46
|
### Changed
|
package/dist/module.js
CHANGED
|
@@ -1,48 +1,14 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description This file contains the main entry point for the mb-service command.
|
|
3
|
-
* @file module.ts
|
|
4
|
-
* @author Luca Liguori
|
|
5
|
-
* @created 2024-07-14
|
|
6
|
-
* @version 1.1.3
|
|
7
|
-
* @license Apache-2.0
|
|
8
|
-
*
|
|
9
|
-
* Copyright 2024, 2025, 2026 Luca Liguori.
|
|
10
|
-
*
|
|
11
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
12
|
-
* you may not use this file except in compliance with the License.
|
|
13
|
-
* You may obtain a copy of the License at
|
|
14
|
-
*
|
|
15
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
16
|
-
*
|
|
17
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
18
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
19
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
20
|
-
* See the License for the specific language governing permissions and
|
|
21
|
-
* limitations under the License.
|
|
22
|
-
*/
|
|
23
|
-
/* eslint-disable n/no-process-exit */
|
|
24
|
-
/* eslint-disable no-console */
|
|
25
|
-
// console.warn('Loaded module.ts.');
|
|
26
|
-
import { existsSync, writeFileSync } from 'node:fs';
|
|
27
1
|
import { spawnSync } from 'node:child_process';
|
|
28
|
-
|
|
29
|
-
* Main entry point for the mb-service command.
|
|
30
|
-
* It is designed to manage the Matterbridge service on Linux systems.
|
|
31
|
-
* It checks if the system is running on Linux and not inside a container.
|
|
32
|
-
* If the conditions are met, it prints the help screen for mb-service if no command is given.
|
|
33
|
-
*/
|
|
2
|
+
import { existsSync, writeFileSync } from 'node:fs';
|
|
34
3
|
export function main() {
|
|
35
|
-
// Exit if not running on Linux
|
|
36
4
|
if (process.platform !== 'linux') {
|
|
37
5
|
console.error('This command is only available on Linux systems. Please use the mb-service for your platform.');
|
|
38
6
|
return;
|
|
39
7
|
}
|
|
40
|
-
// Exit if running inside a container (check for /.dockerenv or /run/.containerenv)
|
|
41
8
|
if (existsSync('/.dockerenv') || existsSync('/run/.containerenv')) {
|
|
42
9
|
console.error('This command is not available inside a container. Please run it on a host system.');
|
|
43
10
|
return;
|
|
44
11
|
}
|
|
45
|
-
// Exit if not running as root
|
|
46
12
|
if (process.getuid && process.getuid() !== 0) {
|
|
47
13
|
console.error('This command must be run as root. Please use sudo.');
|
|
48
14
|
return;
|
|
@@ -122,9 +88,6 @@ export function main() {
|
|
|
122
88
|
return;
|
|
123
89
|
}
|
|
124
90
|
}
|
|
125
|
-
/**
|
|
126
|
-
* Prints the help screen for mb-service, similar to hb-service for Homebridge.
|
|
127
|
-
*/
|
|
128
91
|
function printHelp() {
|
|
129
92
|
console.log(`Usage: mb-service [start|stop|restart|logs|status]\n\n` +
|
|
130
93
|
` Please provide a command:\n` +
|
|
@@ -142,9 +105,6 @@ function printHelp() {
|
|
|
142
105
|
` logs tails the matterbridge service logs\n` +
|
|
143
106
|
` status check if matterbridge is running\n`);
|
|
144
107
|
}
|
|
145
|
-
/**
|
|
146
|
-
* Create the systemd service configuration for Matterbridge.
|
|
147
|
-
*/
|
|
148
108
|
function createServiceConfig() {
|
|
149
109
|
const user = process.env.SUDO_USER || process.env.USER;
|
|
150
110
|
const config = `[Unit]\n` +
|
|
@@ -194,107 +154,66 @@ function createServiceConfig() {
|
|
|
194
154
|
process.exit(1);
|
|
195
155
|
}
|
|
196
156
|
}
|
|
197
|
-
/**
|
|
198
|
-
* Start the matterbridge service using systemctl.
|
|
199
|
-
*/
|
|
200
157
|
function startMatterbridgeService() {
|
|
201
158
|
const result = spawnSync('systemctl', ['start', 'matterbridge'], { stdio: 'inherit' });
|
|
202
159
|
if (result.error) {
|
|
203
160
|
console.error('Failed to start matterbridge service:', result.error.message);
|
|
204
161
|
}
|
|
205
162
|
}
|
|
206
|
-
/**
|
|
207
|
-
* Stop the matterbridge service using systemctl.
|
|
208
|
-
*/
|
|
209
163
|
function stopMatterbridgeService() {
|
|
210
164
|
const result = spawnSync('systemctl', ['stop', 'matterbridge'], { stdio: 'inherit' });
|
|
211
165
|
if (result.error) {
|
|
212
166
|
console.error('Failed to stop matterbridge service:', result.error.message);
|
|
213
167
|
}
|
|
214
168
|
}
|
|
215
|
-
/**
|
|
216
|
-
* Restart the matterbridge service using systemctl.
|
|
217
|
-
*/
|
|
218
169
|
function restartMatterbridgeService() {
|
|
219
170
|
const result = spawnSync('systemctl', ['restart', 'matterbridge'], { stdio: 'inherit' });
|
|
220
171
|
if (result.error) {
|
|
221
172
|
console.error('Failed to restart matterbridge service:', result.error.message);
|
|
222
173
|
}
|
|
223
174
|
}
|
|
224
|
-
/**
|
|
225
|
-
* Enable the matterbridge service using systemctl.
|
|
226
|
-
*/
|
|
227
175
|
function enableMatterbridgeService() {
|
|
228
176
|
const result = spawnSync('systemctl', ['enable', 'matterbridge'], { stdio: 'inherit' });
|
|
229
177
|
if (result.error) {
|
|
230
178
|
console.error('Failed to enable matterbridge service:', result.error.message);
|
|
231
179
|
}
|
|
232
180
|
}
|
|
233
|
-
/**
|
|
234
|
-
* Disable the matterbridge service using systemctl.
|
|
235
|
-
*/
|
|
236
181
|
function disableMatterbridgeService() {
|
|
237
182
|
const result = spawnSync('systemctl', ['disable', 'matterbridge'], { stdio: 'inherit' });
|
|
238
183
|
if (result.error) {
|
|
239
184
|
console.error('Failed to disable matterbridge service:', result.error.message);
|
|
240
185
|
}
|
|
241
186
|
}
|
|
242
|
-
/**
|
|
243
|
-
* Install a global npm package (plugin) for Matterbridge.
|
|
244
|
-
*
|
|
245
|
-
* @param {string} pkg - The npm package name (and optional version) to install globally.
|
|
246
|
-
*/
|
|
247
187
|
function installGlobalPackage(pkg) {
|
|
248
188
|
const result = spawnSync('npm', ['install', pkg, '--global', '--omit=dev', '--verbose'], { stdio: 'inherit' });
|
|
249
189
|
if (result.error) {
|
|
250
190
|
console.error(`Failed to install ${pkg}:`, result.error.message);
|
|
251
191
|
}
|
|
252
192
|
}
|
|
253
|
-
/**
|
|
254
|
-
* Uninstall a global npm package (plugin) for Matterbridge.
|
|
255
|
-
*
|
|
256
|
-
* @param {string} pkg - The npm package name (and optional version) to uninstall globally.
|
|
257
|
-
*/
|
|
258
193
|
function uninstallGlobalPackage(pkg) {
|
|
259
194
|
const result = spawnSync('npm', ['uninstall', pkg, '--global', '--verbose'], { stdio: 'inherit' });
|
|
260
195
|
if (result.error) {
|
|
261
196
|
console.error(`Failed to uninstall ${pkg}:`, result.error.message);
|
|
262
197
|
}
|
|
263
198
|
}
|
|
264
|
-
/**
|
|
265
|
-
* Add a plugin to Matterbridge using 'matterbridge -add PLUGIN'.
|
|
266
|
-
*
|
|
267
|
-
* @param {string} plugin - The plugin name to add.
|
|
268
|
-
*/
|
|
269
199
|
function addMatterbridgePlugin(plugin) {
|
|
270
200
|
const result = spawnSync('matterbridge', ['-add', plugin], { stdio: 'inherit' });
|
|
271
201
|
if (result.error) {
|
|
272
202
|
console.error(`Failed to add plugin ${plugin}:`, result.error.message);
|
|
273
203
|
}
|
|
274
204
|
}
|
|
275
|
-
/**
|
|
276
|
-
* Remove a plugin from Matterbridge using 'matterbridge -remove PLUGIN'.
|
|
277
|
-
*
|
|
278
|
-
* @param {string} plugin - The plugin name to remove.
|
|
279
|
-
*/
|
|
280
205
|
function removeMatterbridgePlugin(plugin) {
|
|
281
206
|
const result = spawnSync('matterbridge', ['-remove', plugin], { stdio: 'inherit' });
|
|
282
207
|
if (result.error) {
|
|
283
208
|
console.error(`Failed to remove plugin ${plugin}:`, result.error.message);
|
|
284
209
|
}
|
|
285
210
|
}
|
|
286
|
-
/**
|
|
287
|
-
* Show the last 1000 lines of the Matterbridge service logs and follow new logs.
|
|
288
|
-
*/
|
|
289
211
|
function showMatterbridgeLogs() {
|
|
290
212
|
const result = spawnSync('journalctl', ['-u', 'matterbridge.service', '-n', '1000', '-f', '--output', 'cat'], { stdio: 'inherit' });
|
|
291
213
|
if (result.error) {
|
|
292
214
|
console.error('Failed to show logs:', result.error.message);
|
|
293
215
|
}
|
|
294
216
|
}
|
|
295
|
-
/**
|
|
296
|
-
* Show the status of the Matterbridge service using systemctl.
|
|
297
|
-
*/
|
|
298
217
|
function showMatterbridgeStatus() {
|
|
299
218
|
const result = spawnSync('systemctl', ['status', 'matterbridge', '--no-pager'], { stdio: 'inherit' });
|
|
300
219
|
if (result.error) {
|
|
@@ -302,4 +221,3 @@ function showMatterbridgeStatus() {
|
|
|
302
221
|
}
|
|
303
222
|
}
|
|
304
223
|
main();
|
|
305
|
-
//# sourceMappingURL=module.js.map
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mb-service-linux",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "mb-service-linux",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.2",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"bin": {
|
|
12
12
|
"mb-service": "bin/mb-service"
|
|
13
13
|
},
|
|
14
14
|
"engines": {
|
|
15
|
-
"node": ">=20.
|
|
15
|
+
"node": ">=20.19.0 <21.0.0 || >=22.13.0 <23.0.0 || >=24.0.0 <25.0.0"
|
|
16
16
|
},
|
|
17
17
|
"funding": {
|
|
18
18
|
"type": "buymeacoffee",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mb-service-linux",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Matterbridge service command line interface",
|
|
5
5
|
"author": "https://github.com/Luligu",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
}
|
|
50
50
|
},
|
|
51
51
|
"engines": {
|
|
52
|
-
"node": ">=20.
|
|
52
|
+
"node": ">=20.19.0 <21.0.0 || >=22.13.0 <23.0.0 || >=24.0.0 <25.0.0"
|
|
53
53
|
},
|
|
54
54
|
"bin": {
|
|
55
55
|
"mb-service": "bin/mb-service"
|
|
@@ -59,5 +59,10 @@
|
|
|
59
59
|
"dist",
|
|
60
60
|
"npm-shrinkwrap.json",
|
|
61
61
|
"CHANGELOG.md"
|
|
62
|
-
]
|
|
62
|
+
],
|
|
63
|
+
"overrides": {
|
|
64
|
+
"typescript": "6.0.2",
|
|
65
|
+
"eslint": "10.1.0",
|
|
66
|
+
"@eslint/js": "10.0.1"
|
|
67
|
+
}
|
|
63
68
|
}
|
package/dist/module.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description This file contains the main entry point for the mb-service command.
|
|
3
|
-
* @file module.ts
|
|
4
|
-
* @author Luca Liguori
|
|
5
|
-
* @created 2024-07-14
|
|
6
|
-
* @version 1.1.3
|
|
7
|
-
* @license Apache-2.0
|
|
8
|
-
*
|
|
9
|
-
* Copyright 2024, 2025, 2026 Luca Liguori.
|
|
10
|
-
*
|
|
11
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
12
|
-
* you may not use this file except in compliance with the License.
|
|
13
|
-
* You may obtain a copy of the License at
|
|
14
|
-
*
|
|
15
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
16
|
-
*
|
|
17
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
18
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
19
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
20
|
-
* See the License for the specific language governing permissions and
|
|
21
|
-
* limitations under the License.
|
|
22
|
-
*/
|
|
23
|
-
/**
|
|
24
|
-
* Main entry point for the mb-service command.
|
|
25
|
-
* It is designed to manage the Matterbridge service on Linux systems.
|
|
26
|
-
* It checks if the system is running on Linux and not inside a container.
|
|
27
|
-
* If the conditions are met, it prints the help screen for mb-service if no command is given.
|
|
28
|
-
*/
|
|
29
|
-
export declare function main(): void;
|
|
30
|
-
//# sourceMappingURL=module.d.ts.map
|
package/dist/module.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AASH;;;;;GAKG;AACH,wBAAgB,IAAI,SAgGnB"}
|
package/dist/module.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
|