install cli must overwrite an existing bds-cli and must use links #125

Closed
opened 2026-08-03 08:13:09 +00:00 by hugo · 1 comment
Owner

bds-cli must use symbolic links to link the CLI to the bds-cli in the app and must overwrite an already existing bds-cli. this is to ensure that bds-cli is always linking to the correct location.

bds-cli must use symbolic links to link the CLI to the bds-cli in the app and must overwrite an already existing bds-cli. this is to ensure that bds-cli is always linking to the correct location.
hugo added the bug label 2026-08-03 08:13:09 +00:00
Author
Owner

Implemented in 3b1a653. The shared installer used by Settings → Data and bds-cli install now replaces an existing file, valid symlink, or broken symlink at ~/.local/bin/bds-cli with a symbolic link to the canonical packaged CLI. The old forwarding-script generation was removed, and README.md, CLI.md, and specs/cli.allium now document the link and replacement behavior. Verification: red/green core and CLI regression tests; cargo fmt --all -- --check; cargo clippy --workspace --all-targets -- -D warnings; cargo test --workspace (all passing, one unrelated model-download test ignored by its declaration); allium check and analyse with no findings; cargo bundle-macos; and an isolated real-bundle test that overwrote a regular file, executed through the resulting link, and reinstalled idempotently through that link. Neutral review found the issue and Allium behavior fully implemented; compared with bDS2, RuDS preserves overwrite/selected-package behavior while intentionally using the symbolic link required by this issue instead of bDS2's shell shim.

Implemented in 3b1a653. The shared installer used by Settings → Data and bds-cli install now replaces an existing file, valid symlink, or broken symlink at ~/.local/bin/bds-cli with a symbolic link to the canonical packaged CLI. The old forwarding-script generation was removed, and README.md, CLI.md, and specs/cli.allium now document the link and replacement behavior. Verification: red/green core and CLI regression tests; cargo fmt --all -- --check; cargo clippy --workspace --all-targets -- -D warnings; cargo test --workspace (all passing, one unrelated model-download test ignored by its declaration); allium check and analyse with no findings; cargo bundle-macos; and an isolated real-bundle test that overwrote a regular file, executed through the resulting link, and reinstalled idempotently through that link. Neutral review found the issue and Allium behavior fully implemented; compared with bDS2, RuDS preserves overwrite/selected-package behavior while intentionally using the symbolic link required by this issue instead of bDS2's shell shim.
hugo closed this issue 2026-08-03 09:05:12 +00:00
Sign in to join this conversation.