mirror of https://github.com/cirruslabs/tart.git
Add a per-VM "memoryBalloon" setting (disabled by default) that, when enabled via "tart set <name> --memory-balloon true", attaches a VZVirtioTraditionalMemoryBalloonDeviceConfiguration to the VM, allowing supported guest operating systems to participate in best-effort memory reclaim. A balloon target can be requested at run time via "tart run --balloon-target-memory <MB>". The target is re-applied periodically, since a target set before the guest's virtio-balloon driver probes the device is lost when the guest resets the device while booting (the same applies to guest reboots). The balloon device is skipped for suspendable VMs (similarly to the entropy device) to not interfere with the save/restore support. VM.craftConfiguration() is split into a buildConfiguration() part and a validation part, so that the device wiring can be unit-tested without the "com.apple.security.virtualization" entitlement. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> |
||
|---|---|---|
| .ci | ||
| .github | ||
| Resources | ||
| Sources/tart | ||
| Tests/TartTests | ||
| benchmark | ||
| docs | ||
| integration-tests | ||
| scripts | ||
| .cirrus.yml | ||
| .editorconfig | ||
| .gitignore | ||
| .goreleaser.yml | ||
| .swiftformat | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| PROFILING.md | ||
| Package.resolved | ||
| Package.swift | ||
| README.md | ||
| actool.sh | ||
| gon.hcl | ||
| mkdocs.yml | ||
README.md
Tart is a virtualization toolset to build, run and manage macOS and Linux virtual machines (VMs) on Apple Silicon. Built by CI engineers for your automation needs. Here are some highlights of Tart:
- Tart uses Apple's own
Virtualization.Frameworkfor near-native performance. - Push/Pull virtual machines from any OCI-compatible container registry.
- Use Tart Packer Plugin to automate VM creation.
- Easily integrates with any CI system.
Many companies are using Tart in their internal setups. Here are just a few of them:
Note: If your company or project is using Tart please consider sharing with the community.
Usage
Try running a Tart VM on your Apple Silicon device running macOS 13.0 (Ventura) or later (will download a 25 GB image):
brew install cirruslabs/cli/tart
tart clone ghcr.io/cirruslabs/macos-tahoe-base:latest tahoe-base
tart run tahoe-base
Please check the official documentation for more information and/or feel free to use discussions for remaining questions.