summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md30
1 files changed, 30 insertions, 0 deletions
diff --git a/README.md b/README.md
index 23257e1..a2e01f7 100644
--- a/README.md
+++ b/README.md
@@ -23,6 +23,7 @@ The server currently exposes tools for:
- user-session command execution with the configured D-Bus environment
- Sailfish Browser launch/debug helpers
- Docker/mb2 RPM builds through the local `build-sailfishos` helper
+- remote Android/AppSupport builds on configured build hosts
- installed SDK repository metadata refresh
- Jolla OBS result and build-log lookup through `osc`
- repository status and search under the configured git root
@@ -67,6 +68,12 @@ Example MCP client configuration:
}
```
+The wrapper writes startup, shutdown, MCP request, and tool-call logs to
+`~/.local/state/sailfish-devel-mcp/server.log` by default. Override the log
+directory with `SAILFISH_DEVEL_MCP_LOG_DIR`. If the MCP client uses a different
+server label, set `SAILFISH_DEVEL_MCP_SERVER_LABEL` in the client environment so
+the wrapper startup line includes the same label.
+
## Configuration
Example:
@@ -90,6 +97,14 @@ Example:
"ssh_config": "~/.ssh/config",
"local_sdk": "/srv/mer/sdks/sfossdk/sdk-chroot",
"osc_api_alias": "your-obs-alias"
+ },
+ "default_android_build_host": "android-builder",
+ "android_build_hosts": {
+ "android-builder": {
+ "ssh_target": "user@android-build-host",
+ "project_dir": "/path/to/alien-aliendalvik-system",
+ "state_dir": "/tmp/sailfish-devel-mcp/android-builds"
+ }
}
}
```
@@ -112,6 +127,7 @@ Mutating tools are annotated as non-read-only:
- `sailfish_device_restart_service`
- `sailfish_device_browser_launch`
- `sailfish_build_rpm`
+- `sailfish_android_build`
- `sailfish_sdk_refresh_metadata`
`sailfish_device_lipstick_screenshot` defaults to
@@ -139,6 +155,11 @@ structured result separately.
Set `run_as_user` when the command should execute as the configured Sailfish
username through `runuser` or `su`.
+`sailfish_device_install_rpm` accepts either `rpm_path` for one local RPM or
+`rpm_paths` for a dependency set. With `rpm_paths`, the tool copies every RPM to
+the remote `remote_dir` and runs one `pkcon install-local` or `rpm -Uvh`
+command with all copied files, so dependencies can be resolved together.
+
`sailfish_device_browser_launch` stops the browser booster service and stale
browser/firejail PIDs when requested, launches Sailfish Browser through
`invoker` with the display and user-session environment, then queries Lipstick
@@ -156,6 +177,15 @@ wrapper image defaults to `sailfish-sdk-build-engine:$USER` and can be
overridden with
`SAILFISH_SDK_BUILD_ENGINE_IMAGE`.
+`sailfish_android_build` starts a remote Android/AppSupport build on the
+configured build host. Configure `android_build_hosts.<host>.project_dir` or
+pass `project_dir` to point at the remote Android tree, for example an
+`alien-aliendalvik-system` checkout. The tool writes job state under the remote
+`state_dir`, creates a per-job `run.sh`, and starts it with `nohup`, so the SSH
+session used to launch the job can disconnect without killing the build. Poll
+with `sailfish_android_build_status`; omit `job_id` to list recent jobs, or pass
+a job id to read state and tail `build.log`.
+
`sailfish_sdk_refresh_metadata` refreshes zypper metadata in the installed SDK
main target, for example `aarch64.default`, using the same privileged Docker
wrapper style as local SDK builds. Use it when local SDK builds fail because a