Install the CLI with an overwriting symbolic link.

This commit is contained in:
2026-08-03 11:04:02 +02:00
parent 36cbaa0cc5
commit 3b1a65359c
5 changed files with 69 additions and 79 deletions

View File

@@ -215,15 +215,15 @@ rule InstallLauncher {
when: CliInstallRequested() or CliCommandExecuted(command)
requires: command = install
-- Settings/Data, the future TUI settings action, and `bds-cli install`
-- share one guarded installer. A forwarding launcher written to
-- ~/.local/bin/bds-cli executes the packaged native CLI in place, so it
-- uses the same packaged runtime as the desktop app. Existing unrelated
-- files are never overwritten; outside a packaged release the action
-- reports that the packaged CLI executable is required.
-- share one installer. A symbolic link at ~/.local/bin/bds-cli targets
-- the packaged native CLI in place, so it uses the same packaged runtime
-- as the desktop app. Every install replaces an existing file or symbolic
-- link at that path so it always targets the requested package. Outside a
-- packaged release the action reports that the packaged CLI is required.
ensures: LauncherInstalled()
}
invariant NativeArgv {
-- The forwarding launcher preserves operating-system argv for the native
-- bds-cli executable without the bDS2 release-eval environment shim.
-- The symbolic link invokes the native bds-cli executable directly with
-- operating-system argv, without the bDS2 release-eval environment shim.
}