39 lines
1.2 KiB
Markdown
39 lines
1.2 KiB
Markdown
# plugin-helper
|
|
|
|
`plugin-helper` is an early Python CLI for managing Beat Saber plugins in a mounted Windows BSManager install.
|
|
|
|
The first implementation focuses on safe local workflows:
|
|
|
|
- discover BSManager instances
|
|
- scan existing `Plugins/` and `Libs/` files
|
|
- read checked-in registry and per-version lockfiles
|
|
- generate a machine-readable install plan from local release assets
|
|
- apply exactly that plan and record install state
|
|
- uninstall only files recorded in install state
|
|
|
|
Default BSManager instance root:
|
|
|
|
```text
|
|
/home/pleb/Windows/Users/pleb/BSManager/BSInstances
|
|
```
|
|
|
|
Override with `--instances-root` or `PLUGIN_HELPER_INSTANCES_ROOT`.
|
|
|
|
## Commands
|
|
|
|
Run from the repo root with `PYTHONPATH=src` unless installed.
|
|
|
|
```sh
|
|
PYTHONPATH=src python -m plugin_helper instances
|
|
PYTHONPATH=src python -m plugin_helper --state-dir .state installed --instance 1.40.8
|
|
PYTHONPATH=src python -m plugin_helper updates --instance 1.40.8
|
|
PYTHONPATH=src python -m plugin_helper scan --instance 1.40.8
|
|
PYTHONPATH=src python -m plugin_helper --state-dir .state plan --instance 1.40.8
|
|
```
|
|
|
|
Install assets are currently expected to already exist locally, usually under:
|
|
|
|
```text
|
|
.state/instances/<instance>/downloads/<plugin-id>/
|
|
```
|