diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 30 |
1 files changed, 30 insertions, 0 deletions
@@ -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 |
