Skip to content

Commit a38d82b

Browse files
authored
v0.1.0 (#3)
1 parent 40a424e commit a38d82b

File tree

4 files changed

+86
-98
lines changed

4 files changed

+86
-98
lines changed

README.md

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,11 @@
11
# Matterbridge Service Command
22

3-
A service management command-line utility for [Matterbridge](https://github.com/Luligu/matterbridge/), inspired by the [Homebridge Service Command](https://github.com/homebridge/homebridge-config-ui-x/wiki/Homebridge-Service-Command) `hb-service`.
3+
A service management command-line utility for [Matterbridge](https://github.com/Luligu/matterbridge/), inspired by [Homebridge's](https://github.com/homebridge/homebridge-config-ui-x/wiki/Homebridge-Service-Command) `hb-service`.
44

55
_This is currently experimental and only supports macOS with a default configuration at the moment!_
66

77
```
8-
% npm install -g matterbridge
9-
% git clone https://github.com/michaelahern/mb-service.git
10-
% cd mb-service
11-
% npm install
12-
% npm run build
13-
% npm link
8+
% npm install -g matterbridge mb-service
149
1510
% mb-service
1611
Usage: mb-service <command>

package-lock.json

Lines changed: 73 additions & 73 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,9 @@
22
"name": "mb-service",
33
"displayName": "Matterbridge Service Command",
44
"version": "0.1.0",
5-
"description": "Matterbridge Service Command",
5+
"description": "A service management command-line utility for Matterbridge, inspired by Homebridge's 'hb-service'.",
66
"keywords": [
77
"matter",
8-
"matter.js",
98
"matterbridge"
109
],
1110
"homepage": "https://github.com/michaelahern/mb-service",

src/mac.ts

Lines changed: 10 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -96,12 +96,7 @@ export class MacPlatform extends PlatformCommands {
9696

9797
start(): void {
9898
this.#checkRoot();
99-
100-
if (!this.#isInstalled()) {
101-
console.error('Matterbridge Service Not Installed!');
102-
console.error('sudo mb-service install');
103-
process.exit(1);
104-
}
99+
this.#checkInstalled();
105100

106101
if (this.pid()) {
107102
console.warn('Matterbridge Service Already Running!');
@@ -114,12 +109,7 @@ export class MacPlatform extends PlatformCommands {
114109

115110
stop(): void {
116111
this.#checkRoot();
117-
118-
if (!this.#isInstalled()) {
119-
console.error('Matterbridge Service Not Installed!');
120-
console.error('sudo mb-service install');
121-
process.exit(1);
122-
}
112+
this.#checkInstalled();
123113

124114
if (this.pid()) {
125115
console.info('Stopping Matterbridge Service...');
@@ -154,6 +144,14 @@ export class MacPlatform extends PlatformCommands {
154144
}
155145
}
156146

147+
#checkInstalled(): void {
148+
if (!existsSync(this.#plist)) {
149+
console.error('Matterbridge Service Not Installed!');
150+
console.error('sudo mb-service install');
151+
process.exit(1);
152+
}
153+
}
154+
157155
#getUserInfo(): UserInfo<string> {
158156
if (process.env.SUDO_USER && process.env.SUDO_UID && process.env.SUDO_GID) {
159157
return {
@@ -168,10 +166,6 @@ export class MacPlatform extends PlatformCommands {
168166
return userInfo();
169167
}
170168

171-
#isInstalled(): boolean {
172-
return existsSync(this.#plist);
173-
}
174-
175169
#mkdirPath(path: string, userInfo: UserInfo<string>): void {
176170
mkdirSync(path, { recursive: true });
177171
chownSync(path, userInfo.uid, userInfo.gid);

0 commit comments

Comments
 (0)