macOS and Linux VMs on Apple Silicon to use in CI and other automations
Go to file
Nikolay Edigaryev ae9520430b Make sure other resources are signed too 2026-03-16 19:16:00 +01:00
.ci Fixed plist file in version update (#927) 2024-10-29 13:01:47 +04:00
.github Add build workflow for testing (#1180) 2026-01-23 09:41:13 -05:00
Resources Resources/Info.plist: use "com.github.cirruslabs.tart" bundle identifier 2026-03-16 18:37:22 +01:00
Sources/tart Mention macOS Tahoe everywhere instead of macOS Sequoia (#1208) 2026-03-02 08:50:29 -05:00
Tests/TartTests Remove disk v1 support (#1204) 2026-02-25 14:34:25 +00:00
benchmark Mention macOS Tahoe everywhere instead of macOS Sequoia (#1208) 2026-03-02 08:50:29 -05:00
docs Update FAQ for local network prompt (#1211) 2026-03-06 17:57:06 +00:00
integration-tests OpenTelemetry: set default resources, service.name and service.version (#1184) 2026-01-27 16:17:05 +01:00
scripts Mention macOS Tahoe everywhere instead of macOS Sequoia (#1208) 2026-03-02 08:50:29 -05:00
.cirrus.yml Only release 2026-03-16 18:49:23 +01:00
.editorconfig Switch to OpenTelemetry (#1179) 2026-01-23 12:04:21 +01:00
.gitignore feat: Add disk image format selection with ASIF support (#1094) 2025-06-19 18:27:30 +04:00
.goreleaser.yml Make sure other resources are signed too 2026-03-16 19:16:00 +01:00
.swiftformat Reformat code idents and introduce the SwiftFormat linter (#339) 2022-11-29 15:56:13 +00:00
CONTRIBUTING.md feat: prioritize pruning of old SHA when pulling updated tags (#1102) 2025-07-07 08:52:05 +00:00
LICENSE Relicensed under Fair Source License (#415) 2023-02-28 12:22:25 -05:00
PROFILING.md Mention macOS Tahoe everywhere instead of macOS Sequoia (#1208) 2026-03-02 08:50:29 -05:00
Package.resolved Switch back to github.com/open-telemetry/opentelemetry-swift upstream (#1189) 2026-02-02 19:40:24 +01:00
Package.swift Switch back to github.com/open-telemetry/opentelemetry-swift upstream (#1189) 2026-02-02 19:40:24 +01:00
README.md Update README example to use macOS Tahoe (#1101) 2025-07-07 13:50:16 +04:00
gon.hcl Sign the whole tart.app 2026-03-16 18:46:16 +01:00
mkdocs.yml docs: migrate "Managing VMs" section to "Quick Start" (#1196) 2026-02-13 05:18:14 -05:00

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.Framework for 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.

Tart powers Cirrus Runners service — a drop-in replacement for the standard GitHub-hosted runners, offering 2-3 times better performance for a fraction of the price.

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.