91e75e620b
CI: cua-driver distro-compat matrix / debian:12 (glibc 2.36) (push) Has been cancelled
CI: SPDX Headers / Check SPDX headers (warn-only) (push) Has been cancelled
CD: Docs MCP Server / build (linux/amd64) (push) Has been cancelled
CD: Docs MCP Server / build (linux/arm64) (push) Has been cancelled
CD: Docs MCP Server / merge (push) Has been cancelled
CI: cua-driver distro-compat matrix / Resolve release version (push) Has been cancelled
CI: cua-driver distro-compat matrix / fedora:41 (glibc 2.40) (push) Has been cancelled
CI: cua-driver distro-compat matrix / rockylinux:9 (glibc 2.34) (push) Has been cancelled
CI: cua-driver distro-compat matrix / ubuntu:22.04 (glibc 2.35) (push) Has been cancelled
CI: cua-driver distro-compat matrix / ubuntu:24.04 (glibc 2.39) (push) Has been cancelled
CI: cua-driver distro-compat matrix / Distro compat summary (push) Has been cancelled
CI: Rust Linux unit / Rust Linux unit and compile (push) Has been cancelled
CI: Rust Windows unit / Rust Windows unit and compile (push) Has been cancelled
CI: Nix Linux Rust source / Nix / compositor build (push) Has been cancelled
CI: Nix Linux Rust source / Nix / driver package (push) Has been cancelled
CI: Nix Linux Rust source / Nix / Rust unit tests (push) Has been cancelled
1.9 KiB
1.9 KiB
Development Guide
This guide will help you set up your development environment and understand the process for contributing code to lume.
Environment Setup
Lume development requires:
- Swift 6 or higher
- Xcode 15 or higher
- macOS Sequoia 15.2 or higher
- (Optional) VS Code with Swift extension
If you're working on Lume in the context of the Cua monorepo, we recommend using the dedicated VS Code workspace configuration:
# Open VS Code workspace from the root of the monorepo
code .vscode/lume.code-workspace
This workspace is preconfigured with Swift language support, build tasks, and debug configurations.
Setting Up the Repository Locally
- Fork the Repository: Create your own fork of lume
- Clone the Repository:
git clone https://github.com/trycua/lume.git cd lume - Install Dependencies:
swift package resolve - Build the Project:
swift build
Development Workflow
- Create a new branch for your changes
- Make your changes
- Run the tests:
swift test - Build and test your changes locally
- Commit your changes with clear commit messages
Submitting Pull Requests
- Push your changes to your fork
- Open a Pull Request with:
- A clear title and description
- Reference to any related issues
- Screenshots or logs if relevant
- Respond to any feedback from maintainers
Testing Offline Unattended Setup
Use a local Apple restore image to exercise the vanilla macOS flow end to end:
lume create macos-tahoe --ipsw ~/Downloads/macos-tahoe.ipsw --unattended tahoe
lume run macos-tahoe
lume ssh macos-tahoe 'id -un'
The guest should report lume, accept SSH with the default lume password,
and boot without Setup Assistant. Tahoe is the currently verified preset;
Sequoia's remaining Accessibility-step issue is tracked in
#2155.