Vista

#Creating and running machines

#Making a machine

Choose New Machine — in the toolbar, from the menu bar panel, or with ⌘N.

#1. Choose a system

#2. Set it up

FieldNotes
NameShown in the sidebar, the menu bar and the machine's window.
Processors, Memory, DiskDefaults depend on the system (below). The disk is sparse, so a generous size costs nothing until the guest writes. Each system has a minimum disk size its installer needs.
First accountmacOS and Windows. On a macOS 27 host, Vista creates this account in a new macOS machine and skips Setup Assistant; leave the password empty to go through Setup Assistant yourself. Windows always installs unattended with this account.
Share DownloadsThe Mac's Downloads folder appears inside the guest. The default comes from Settings.
RosettaLinux: lets the guest run x86-64 Linux programs. On by default when Rosetta is installed on the Mac.
Remote LoginmacOS: turns on SSH for the first account.
Start when readyBoot the installer as soon as the machine is built.
SystemProcessorsMemoryDiskSmallest disk
macOS48 GB96 GB64 GB
Windows48 GB80 GB64 GB
Linux44 GB64 GB16 GB
BSD and others22 GB32 GB4 GB

A macOS restore image can require more processors or memory than you chose; Vista raises them to the image's minimum when it installs.

#3. Create

Create Machine starts a job, which appears under Creating in the sidebar with what it's doing and how far along it is:

  1. Finding the installer — asks the publisher for the current file (see Systems).
  2. Downloading — resumable. A download interrupted by a quit, a crash or a lost connection continues from where it stopped next time.
  3. Verifying — the SHA-256 the publisher lists, where there is one.
  4. Preparing — Windows only: building the install disk.
  5. Creating — the machine's folder and its sparse disk.
  6. Starting — if you asked for it.

The ✕ on a job cancels it; on a failed job it dismisses it. A failed job keeps its message until you dismiss it. When a job finishes, Vista selects the new machine.

Installers are kept (Settings → Downloads), so a second machine of the same system skips the download.

Jobs run in their own task and write their progress to ~/Library/Application Support/Vista/jobs/. A job an agent started shows up in the sidebar exactly like one you started.

#Installing the system

#macOS

The machine process installs macOS from the restore image before the first boot, showing a progress window (Installing macOS… 42%). This takes several minutes. When it finishes the machine boots, and on a macOS 27 host with a first account given, it signs straight in.

#Linux and the BSDs

The ISO is plugged in as a USB drive and the machine boots from it, so the distribution's own installer runs in the machine's window. Each system's note in the picker says what to expect at its boot menu.

When an installer finishes it powers the machine off or reboots it — which on this framework is the same thing. If the guest wrote more than 3 GB to its disk while the installer was attached, Vista takes that as a finished install: it ejects the ISO and boots from the disk. Below that, the machine simply stops and keeps the installer, so a live session you shut down can be booted again.

To remove the installer yourself, use Eject Now on the machine's Overview, or Machine → Eject Installer in the machine's window. It is removed at the next start.

#Windows

See Windows.

#Creation progress

Click a creation job in the sidebar to see its current step, publisher requests, elapsed time, download size and percentage, speed and estimated remaining time, and activity history. Unknown download sizes show an activity indicator instead of a percentage. Copy Details provides diagnostics without account passwords.

Cancel Creation stops installer discovery and downloads as well as media preparation. Downloads keep partial files for a later retry. Jobs run in a detached worker, so closing the library leaves creation running. An exited worker is reported as an interrupted creation instead of appearing busy forever. Installer discovery has a 90-second limit; stalled network reads fail after 30 seconds.

Failed or cancelled jobs remain available for inspection, retry, or dismissal. Changing the system or installer opens the creation picker, where you can also choose a local installer.

#The machine page

Select a machine in the sidebar. Right-click (or Control-click) a machine for its context menu: start or resume, show or hide its window, pause, suspend, shut down, take a snapshot, clone, reveal in Finder, or delete. Only actions available in the machine’s current state appear. Force stop and deletion ask for confirmation; a missing machine can be removed from the library. Right-click a creation job for Copy Status and Cancel Creation (or Dismiss after it finishes). Right-click empty sidebar space for New Machine… and Add Existing Machine….

The header shows its system, hardware and state, and the buttons that make sense right now:

StateButtons
StoppedStart, and start in the background (no window)
SuspendedResume, and resume in the background
RunningShow / Hide the window, Pause, Suspend, Shut Down, force stop
PausedResume, Shut Down
ErrorClose (ends the machine's process)

Shut Down presses the guest's power button and lets the guest shut down cleanly. Force stop pulls the plug.

The tabs:

#The machine window

Each running machine has its own window and its own Dock icon, belonging to "Vista Machine". The window is sized to the guest's display and remembers where you put it. Resizing it resizes the guest's display.

The window sends system shortcuts to the guest: ⌘Tab, ⌘Space, ⌘Q and the like go to the machine, not the Mac. For the same reason the window's own menus have no keyboard shortcuts:

Closing the window suspends the machine: its memory is written to disk and the process quits, and the next start resumes it where it was. A machine whose hardware can't be saved that way keeps running in the background instead; show it again from Vista or the menu bar.

A machine started in the background has no window and no Dock icon until something shows it.

#Other things you can do with a machine

Edit this page on GitHub