Skip to content

Add Cloud Agent environment config for neoswift build - #7

Draft
hihaar wants to merge 1 commit into
mainfrom
cursor/setup-cloud-env-c9bb
Draft

hihaar wants to merge 1 commit into
mainfrom
cursor/setup-cloud-env-c9bb

Conversation

@hihaar

@hihaar hihaar commented Aug 26, 2026

Copy link
Copy Markdown
Member

What

Adds a Cursor Cloud Agent environment definition so fresh agents boot ready to build and test neoswift on Linux.

  • .cursor/environment.json — repo-file managed config (user: ubuntu, install: bash .cursor/cloud-install.sh) that declares neoswift-externals and rustfsd as repositoryDependencies.
  • .cursor/cloud-install.sh — idempotent install script that provisions the CI-proven Linux toolchain and performs an end-to-end build of neoswift.

Why

This run started with no linked/dashboard environment (greenfield). Booting agents therefore lacked Qt, Conan, and Ninja, so neoswift could not be built. This commits the setup as version-controlled, repo-file-managed configuration.

Install script behavior

Reproduces the working Linux path from .github/workflows/build.yml:

  1. System packages: build-essential cmake ninja-build pkg-config dbus-x11 libdbus-1-dev libglu1-mesa-dev libgl1-mesa-dev libpulse-dev libxkbcommon-dev libxcb-cursor0
  2. Python tooling: conan, aqtinstall, requests (pip --user)
  3. Qt 6.10.1 linux_gcc_64 with qtmultimedia + qtwebsockets via aqtinstall → /opt/Qt
  4. Rust stable toolchain (rustfsd requires ≥ 1.88)
  5. neoswift bootstrap: init third_party/msgpack submodule, optionally symlink neoswift-externalsthird_party/externals, conan install (Debug) + cmake --preset dev-debug + build
  6. cargo fetch for rustfsd

The dev-debug preset disables VATSIM auth and xswiftbus, so no secrets and no ssh-only submodule (xplanemp2) are required. All helper-repo steps are guarded so the neoswift build succeeds even if the helper repos are absent.

Validation (on this VM, same base image)

Check Result
neoswift build (dev-debug, 1042 targets) Succeeded
neoswift ctest 35/35 passed
rustfsd cargo build --release Succeeded
rustfsd cargo test 32/32 passed
Install script re-run Idempotent (Qt skipped, incremental no-op build, clean git trees)

Toolchain: cmake 3.28.3 · ninja 1.11.1 · gcc 13.3.0 · Qt 6.10.1 · conan 2.31.2 · rustc 1.98.0

neoswift-env-validation.log

Notes

  • Agent-triggered draft-build verification (fresh cloud agent) could not run: this greenfield run has no linked environment, and the build tool will only build the repo-file config once it is present on the default branch. Merging this PR resolves that; subsequent Cloud Agents (and draft builds) will use this config.

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Add .cursor/environment.json (repo-file managed) plus an idempotent
.cursor/cloud-install.sh that provisions the CI-proven Linux toolchain
(Qt 6.10.1 with qtmultimedia+qtwebsockets, Conan 2, Ninja, GCC) and
builds neoswift via the dev-debug preset. Declares neoswift-externals
and rustfsd as repository dependencies for compile/test support.

Co-authored-by: hihaar <hihaar9@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants