peerllm-host-cli 2.2.2 → 2.3.0
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/dist/cli/commands/service.d.ts +11 -0
- package/dist/cli/commands/service.d.ts.map +1 -1
- package/dist/cli/commands/service.js +136 -8
- package/dist/cli/commands/service.js.map +1 -1
- package/package.json +1 -1
- package/templates/launchd/com.peerllm.host.daemon.plist +35 -0
- package/templates/systemd/peerllm-host.system.service +24 -0
|
@@ -23,6 +23,17 @@ export declare function daemonArgv(exec: DaemonExec): string[];
|
|
|
23
23
|
export declare function plistProgramArgs(argv: string[]): string;
|
|
24
24
|
/** Render argv as a systemd ExecStart line, quoting args that contain whitespace. */
|
|
25
25
|
export declare function execStartLine(argv: string[]): string;
|
|
26
|
+
/** Render the boot-mode (LaunchDaemon) plist. Pure — backs both install and tests. */
|
|
27
|
+
export declare function renderDaemonPlist(exec: DaemonExec, vars: {
|
|
28
|
+
user: string;
|
|
29
|
+
home: string;
|
|
30
|
+
logsDir: string;
|
|
31
|
+
}): string;
|
|
32
|
+
/** Render the boot-mode (system systemd) unit. Pure — backs both install and tests. */
|
|
33
|
+
export declare function renderSystemUnit(exec: DaemonExec, vars: {
|
|
34
|
+
user: string;
|
|
35
|
+
home: string;
|
|
36
|
+
}): string;
|
|
26
37
|
export declare function makeServiceCommand(): Command;
|
|
27
38
|
export {};
|
|
28
39
|
//# sourceMappingURL=service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/service.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,UAAU,UAAU;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,UAAU,CAYrE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,CAErD;AAMD,yEAAyE;AACzE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEvD;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEpD;
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/service.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,UAAU,UAAU;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,UAAU,CAYrE;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,EAAE,CAErD;AAMD,yEAAyE;AACzE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEvD;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAEpD;AA4FD,sFAAsF;AACtF,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpD,MAAM,CAQR;AAED,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAO/F;AAuOD,wBAAgB,kBAAkB,IAAI,OAAO,CAM5C"}
|
|
@@ -118,6 +118,101 @@ async function uninstallLaunchd() {
|
|
|
118
118
|
await unlink(plistPath);
|
|
119
119
|
return plistPath;
|
|
120
120
|
}
|
|
121
|
+
// Where each platform's installed boot unit lives (root-owned, world-readable, so
|
|
122
|
+
// `status` can detect it without sudo).
|
|
123
|
+
const LAUNCHD_DAEMON_PATH = "/Library/LaunchDaemons/com.peerllm.host.plist";
|
|
124
|
+
const SYSTEMD_SYSTEM_PATH = "/etc/systemd/system/peerllm-host.service";
|
|
125
|
+
/** Boot install runs as the normal user (node + config paths resolve; the CLI
|
|
126
|
+
* shebang can't find node under sudo's reset PATH). Refuse to run under sudo. */
|
|
127
|
+
function assertNotRootForBoot() {
|
|
128
|
+
if (typeof process.getuid === "function" && process.getuid() === 0) {
|
|
129
|
+
throw new Error("Run `peerllm-host service install --boot` as your normal user (without sudo).\n" +
|
|
130
|
+
"It generates the unit; you then run the printed sudo commands to install it.");
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/** Render the boot-mode (LaunchDaemon) plist. Pure — backs both install and tests. */
|
|
134
|
+
export function renderDaemonPlist(exec, vars) {
|
|
135
|
+
const template = readFileSync(join(templatesDir(), "launchd", "com.peerllm.host.daemon.plist"), "utf8");
|
|
136
|
+
return fillTemplate(template, {
|
|
137
|
+
PROGRAM_ARGS: plistProgramArgs(daemonArgv(exec)),
|
|
138
|
+
LOG_DIR: vars.logsDir,
|
|
139
|
+
USER_NAME: vars.user,
|
|
140
|
+
HOME_DIR: vars.home,
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
/** Render the boot-mode (system systemd) unit. Pure — backs both install and tests. */
|
|
144
|
+
export function renderSystemUnit(exec, vars) {
|
|
145
|
+
const template = readFileSync(join(templatesDir(), "systemd", "peerllm-host.system.service"), "utf8");
|
|
146
|
+
return fillTemplate(template, {
|
|
147
|
+
EXEC_START: execStartLine(daemonArgv(exec)),
|
|
148
|
+
USER_NAME: vars.user,
|
|
149
|
+
HOME_DIR: vars.home,
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
// ── Boot mode ────────────────────────────────────────────────────────────────
|
|
153
|
+
// Boot-level = starts at boot in the SYSTEM domain, no login, no unlocked desktop
|
|
154
|
+
// — what a headless, SSH-managed host wants. macOS → LaunchDaemon; Linux → a system
|
|
155
|
+
// systemd unit. Both are GENERATED as the normal user (where node + config paths
|
|
156
|
+
// resolve; the CLI's `#!/usr/bin/env node` shebang can't find node under sudo's
|
|
157
|
+
// reset PATH), then installed via a short printed sudo sequence.
|
|
158
|
+
async function installBoot(ctx) {
|
|
159
|
+
if (osPlatform() === "darwin")
|
|
160
|
+
return installLaunchDaemon(ctx);
|
|
161
|
+
if (osPlatform() === "linux")
|
|
162
|
+
return installSystemdSystem(ctx);
|
|
163
|
+
throw new Error("--boot (boot-level system service) is supported on macOS and Linux only.");
|
|
164
|
+
}
|
|
165
|
+
async function installLaunchDaemon(ctx) {
|
|
166
|
+
assertNotRootForBoot();
|
|
167
|
+
const user = userInfo().username;
|
|
168
|
+
const home = homedir();
|
|
169
|
+
const rendered = renderDaemonPlist(ctx.exec, { user, home, logsDir: ctx.paths.logsDir });
|
|
170
|
+
await mkdir(ctx.paths.logsDir, { recursive: true });
|
|
171
|
+
await mkdir(ctx.paths.configDir, { recursive: true });
|
|
172
|
+
const staged = join(ctx.paths.configDir, "com.peerllm.host.daemon.plist");
|
|
173
|
+
await writeFile(staged, rendered, { mode: 0o644 });
|
|
174
|
+
return {
|
|
175
|
+
path: staged,
|
|
176
|
+
boot: true,
|
|
177
|
+
hint: `Boot mode runs headless as "${user}" at startup — no login, no unlocked desktop.
|
|
178
|
+
Install & start it (one time):
|
|
179
|
+
sudo launchctl bootout system/com.peerllm.host 2>/dev/null; launchctl bootout gui/$(id -u)/com.peerllm.host 2>/dev/null
|
|
180
|
+
sudo cp "${staged}" ${LAUNCHD_DAEMON_PATH}
|
|
181
|
+
sudo chown root:wheel ${LAUNCHD_DAEMON_PATH}
|
|
182
|
+
sudo launchctl bootstrap system ${LAUNCHD_DAEMON_PATH}
|
|
183
|
+
sudo launchctl kickstart -k system/com.peerllm.host
|
|
184
|
+
(The first line clears any leftover login-mode LaunchAgent with the same label —
|
|
185
|
+
skipping it makes bootstrap fail with "5: Input/output error".)
|
|
186
|
+
Verify it is running:
|
|
187
|
+
sudo launchctl print system/com.peerllm.host | grep -i state
|
|
188
|
+
Remove it later:
|
|
189
|
+
peerllm-host service uninstall --boot
|
|
190
|
+
⚠️ FileVault: with it ON, a cold reboot waits at the unlock screen before the
|
|
191
|
+
daemon starts; with it OFF the host returns fully unattended.`,
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
async function installSystemdSystem(ctx) {
|
|
195
|
+
assertNotRootForBoot();
|
|
196
|
+
const user = userInfo().username;
|
|
197
|
+
const home = homedir();
|
|
198
|
+
const rendered = renderSystemUnit(ctx.exec, { user, home });
|
|
199
|
+
await mkdir(ctx.paths.configDir, { recursive: true });
|
|
200
|
+
const staged = join(ctx.paths.configDir, "peerllm-host.system.service");
|
|
201
|
+
await writeFile(staged, rendered, { mode: 0o644 });
|
|
202
|
+
return {
|
|
203
|
+
path: staged,
|
|
204
|
+
boot: true,
|
|
205
|
+
hint: `Boot mode runs headless as "${user}" at startup — no login needed.
|
|
206
|
+
Install & start it (one time):
|
|
207
|
+
sudo cp "${staged}" ${SYSTEMD_SYSTEM_PATH}
|
|
208
|
+
sudo systemctl daemon-reload
|
|
209
|
+
sudo systemctl enable --now peerllm-host
|
|
210
|
+
Verify it is running:
|
|
211
|
+
systemctl status peerllm-host
|
|
212
|
+
Remove it later:
|
|
213
|
+
peerllm-host service uninstall --boot`,
|
|
214
|
+
};
|
|
215
|
+
}
|
|
121
216
|
async function installWindows(ctx) {
|
|
122
217
|
const scriptPath = join(templatesDir(), "windows", "install-service.ps1");
|
|
123
218
|
const argv = daemonArgv(ctx.exec);
|
|
@@ -165,16 +260,19 @@ function makeInstall() {
|
|
|
165
260
|
.description("Install the platform-appropriate service unit (user-level)")
|
|
166
261
|
.option("--cli-bin <path>", "absolute path to a launcher binary (default: current node + this CLI's entry script, PATH-independent)")
|
|
167
262
|
.option("--config-dir <path>", "override config directory")
|
|
263
|
+
.option("--boot", "boot-level system service that starts at startup with no login (macOS LaunchDaemon / Linux system unit)")
|
|
168
264
|
.action(async (opts) => {
|
|
169
265
|
const ctx = buildContext(opts);
|
|
170
266
|
try {
|
|
171
|
-
const installer =
|
|
172
|
-
?
|
|
173
|
-
: osPlatform() === "
|
|
174
|
-
?
|
|
175
|
-
:
|
|
267
|
+
const installer = opts.boot
|
|
268
|
+
? installBoot
|
|
269
|
+
: osPlatform() === "darwin"
|
|
270
|
+
? installLaunchd
|
|
271
|
+
: osPlatform() === "win32"
|
|
272
|
+
? installWindows
|
|
273
|
+
: installSystemd;
|
|
176
274
|
const result = await installer(ctx);
|
|
177
|
-
process.stdout.write(` installed ${result.path}\n`);
|
|
275
|
+
process.stdout.write(` ${result.boot ? "generated" : "installed"} ${result.path}\n`);
|
|
178
276
|
process.stdout.write(result.hint + "\n");
|
|
179
277
|
process.exit(EXIT.ok);
|
|
180
278
|
}
|
|
@@ -187,7 +285,29 @@ function makeInstall() {
|
|
|
187
285
|
function makeUninstall() {
|
|
188
286
|
return new Command("uninstall")
|
|
189
287
|
.description("Remove the installed service unit")
|
|
190
|
-
.
|
|
288
|
+
.option("--boot", "remove the boot-level system service (macOS LaunchDaemon / Linux system unit)")
|
|
289
|
+
.option("--config-dir <path>", "override config directory")
|
|
290
|
+
.action(async (opts) => {
|
|
291
|
+
if (opts.boot) {
|
|
292
|
+
const os = osPlatform();
|
|
293
|
+
if (os !== "darwin" && os !== "linux") {
|
|
294
|
+
printError("--boot is supported on macOS and Linux only.");
|
|
295
|
+
process.exit(EXIT.runtimeError);
|
|
296
|
+
}
|
|
297
|
+
const configDir = resolvePaths({ configDirOverride: opts.configDir }).configDir;
|
|
298
|
+
const stagedName = os === "darwin" ? "com.peerllm.host.daemon.plist" : "peerllm-host.system.service";
|
|
299
|
+
const staged = join(configDir, stagedName);
|
|
300
|
+
if (existsSync(staged))
|
|
301
|
+
await unlink(staged).catch(() => undefined);
|
|
302
|
+
const removalSteps = os === "darwin"
|
|
303
|
+
? ` sudo launchctl bootout system/com.peerllm.host
|
|
304
|
+
sudo rm -f ${LAUNCHD_DAEMON_PATH}`
|
|
305
|
+
: ` sudo systemctl disable --now peerllm-host
|
|
306
|
+
sudo rm -f ${SYSTEMD_SYSTEM_PATH}
|
|
307
|
+
sudo systemctl daemon-reload`;
|
|
308
|
+
process.stdout.write(`Boot service removal needs sudo. Run:\n${removalSteps}\n`);
|
|
309
|
+
process.exit(EXIT.ok);
|
|
310
|
+
}
|
|
191
311
|
const removed = osPlatform() === "darwin"
|
|
192
312
|
? await uninstallLaunchd()
|
|
193
313
|
: osPlatform() === "win32"
|
|
@@ -225,12 +345,20 @@ function makeStatus() {
|
|
|
225
345
|
process.stdout.write(`type: ${kind}\n`);
|
|
226
346
|
process.stdout.write(`path: ${unitPath}\n`);
|
|
227
347
|
process.stdout.write(`installed: ${installed ? "yes" : "no"}\n`);
|
|
348
|
+
// Also report boot mode — a root-owned unit that's world-readable, so we can
|
|
349
|
+
// detect it without sudo. macOS = LaunchDaemon; Linux = system systemd unit.
|
|
350
|
+
if (osPlatform() === "darwin") {
|
|
351
|
+
process.stdout.write(`boot: ${existsSync(LAUNCHD_DAEMON_PATH) ? "yes" : "no"} (LaunchDaemon ${LAUNCHD_DAEMON_PATH})\n`);
|
|
352
|
+
}
|
|
353
|
+
else if (osPlatform() === "linux") {
|
|
354
|
+
process.stdout.write(`boot: ${existsSync(SYSTEMD_SYSTEM_PATH) ? "yes" : "no"} (systemd system unit ${SYSTEMD_SYSTEM_PATH})\n`);
|
|
355
|
+
}
|
|
228
356
|
process.exit(EXIT.ok);
|
|
229
357
|
});
|
|
230
358
|
}
|
|
231
359
|
export function makeServiceCommand() {
|
|
232
360
|
return new Command("service")
|
|
233
|
-
.description("Install / uninstall a user-level
|
|
361
|
+
.description("Install / uninstall a service unit for the daemon (user-level, or --boot for a macOS system LaunchDaemon)")
|
|
234
362
|
.addCommand(makeInstall())
|
|
235
363
|
.addCommand(makeUninstall())
|
|
236
364
|
.addCommand(makeStatus());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/cli/commands/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/cli/commands/service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>Label</key>
|
|
6
|
+
<string>com.peerllm.host</string>
|
|
7
|
+
<!-- Runs as the owner, NOT root: a LaunchDaemon defaults to root, so we drop
|
|
8
|
+
privilege back to the user who generated it. -->
|
|
9
|
+
<key>UserName</key>
|
|
10
|
+
<string>{USER_NAME}</string>
|
|
11
|
+
<!-- launchd does not derive HOME from UserName, so set it explicitly — otherwise
|
|
12
|
+
the daemon resolves config / models / logs under /var/root and can't find the
|
|
13
|
+
user's models. -->
|
|
14
|
+
<key>EnvironmentVariables</key>
|
|
15
|
+
<dict>
|
|
16
|
+
<key>HOME</key>
|
|
17
|
+
<string>{HOME_DIR}</string>
|
|
18
|
+
</dict>
|
|
19
|
+
<key>ProgramArguments</key>
|
|
20
|
+
<array>
|
|
21
|
+
{PROGRAM_ARGS}
|
|
22
|
+
</array>
|
|
23
|
+
<key>RunAtLoad</key>
|
|
24
|
+
<true/>
|
|
25
|
+
<key>KeepAlive</key>
|
|
26
|
+
<dict>
|
|
27
|
+
<key>SuccessfulExit</key>
|
|
28
|
+
<false/>
|
|
29
|
+
</dict>
|
|
30
|
+
<key>StandardOutPath</key>
|
|
31
|
+
<string>{LOG_DIR}/launchd-stdout.log</string>
|
|
32
|
+
<key>StandardErrorPath</key>
|
|
33
|
+
<string>{LOG_DIR}/launchd-stderr.log</string>
|
|
34
|
+
</dict>
|
|
35
|
+
</plist>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
[Unit]
|
|
2
|
+
Description=PeerLLM Host daemon (boot-level system service)
|
|
3
|
+
After=network-online.target
|
|
4
|
+
Wants=network-online.target
|
|
5
|
+
|
|
6
|
+
[Service]
|
|
7
|
+
Type=simple
|
|
8
|
+
# Runs as the owner (not root): drops privilege to the user who generated the unit.
|
|
9
|
+
User={USER_NAME}
|
|
10
|
+
# systemd does not derive HOME from User=, so set it explicitly — otherwise the
|
|
11
|
+
# daemon resolves config / models / logs under root's home and can't find the
|
|
12
|
+
# user's models.
|
|
13
|
+
Environment=HOME={HOME_DIR}
|
|
14
|
+
# Rendered at install time as an absolute node binary + this CLI's entry script,
|
|
15
|
+
# so the unit does not depend on PATH.
|
|
16
|
+
ExecStart={EXEC_START}
|
|
17
|
+
Restart=on-failure
|
|
18
|
+
RestartSec=5
|
|
19
|
+
# Daemon writes its own logs under ~/PeerLLM/logs/; journal also captures stderr.
|
|
20
|
+
StandardError=journal
|
|
21
|
+
StandardOutput=journal
|
|
22
|
+
|
|
23
|
+
[Install]
|
|
24
|
+
WantedBy=multi-user.target
|