Skip to content

Barn 0.9.0 · Apache-2.0

Your local lab. Linux and macOS.

Bring up a Linux lab from one YAML inventory, or a clean macOS machine for your next build. Fixed addresses, SSH access, and native virtualization on your own hardware.

Bootstrap And Run Nodes. Open source, built for development.

What’s new in 0.9.0

Choose your environment

Virtual machines for everyday development

On macOS and Linux

A Linux lab, from one file

Test a PostgreSQL cluster, reproduce a bug, or try a new distribution. Define up to 20 nodes in one YAML inventory, with stable IPs and SSH ready to use. The same inventory works with Pigsty.

Get started

On Apple Silicon · macOS 27+

A fresh Mac for your next build

Build and test in an independent macOS environment. Open its desktop, connect over SSH, and share folders and text with your Mac. New machines reuse a shared base; each keeps its own disk and identity.

Get started

Install → Start → Connect

Your first Linux VM

Choose your host OS below, then install, start, and connect. On a fresh setup, Barn creates a one-node Ubuntu 24.04 lab and prepares the host dependencies. It shows host changes and requests administrator access when needed.

macOS
brew install pgsty/infra/barn

barn up
barn ssh
Linux
curl -fLO https://github.com/pgsty/barn/releases/download/v0.9.0/install.sh
BARN_VERSION=0.9.0 bash install.sh
export PATH="$HOME/.local/bin:$PATH"

barn up
barn ssh

Use Homebrew on macOS or the download installer on Linux. Already have a lab? barn up resumes it. Installation options and requirements · macOS VM guide

Built for repeatable work

A lab you can understand and control

01

Stable addresses

Linux nodes keep the IPs in your inventory. Reach databases and services directly from the host and other nodes.

02

One configuration

Keep VM definitions in your Ansible inventory. Use it with Barn to create machines and Pigsty to deploy services.

03

Repeatable operations

Repeat up to finish interrupted setup. Review changes with plan; recreate and delete machines explicitly.

04

Reusable images

Linux uses verified qcow2 bases. macOS machines clone a base installed from Apple’s restore image

Before you begin

Which host do I need?

Linux guests run on macOS or Linux, on arm64 or amd64, using QEMU with HVF or KVM. macOS guests require Apple Silicon, macOS 27 or later, and the native Barn Mac component. See platforms and limits.

Do I need Pigsty?

No. Barn works on its own for Linux and macOS development. For a PostgreSQL lab, use the same Linux inventory with Pigsty. Barn prepares machines and access; Pigsty installs the services.

What happens when I edit the inventory?

For Linux labs, plan shows the changes. Up adds new nodes; changes to existing VM definitions require recreate. Removing a host from the file leaves its VM intact until you explicitly destroy it.

Can I keep several macOS machines?

Yes. Give them names and start the ones you need. Apple allows two macOS VMs running at a time per Mac, including other tools. Each Barn Mac machine has an independent network and state, separate from the Linux lab.

Make room for your next experiment.Install Barn 0.9.0, choose your guest, and get to work.