pkg.soopen package index

brew / rank 2302

Install vfkit with Homebrew, MacPorts, Nix

Command-line hypervisor using Apple's Virtualization Framework. Version 0.6.4 via Homebrew; verified 2026-07-07. Also installable with nix: nix profile install nixpkgs#vfkit.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install vfkit

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install vfkit

MacPorts ports tree · sysutils/vfkit/Portfile · source: api.github.com

Linux

Nixverified · 92%
nix profile install nixpkgs#vfkit

nixpkgs package indexes · pkgs/by-name/vf/vfkit/package.nix · source: api.github.com

overview

Package summary

Command-line hypervisor using Apple's Virtualization Framework

Commands and aliases

  • vfkit

history

Project history and usage

vfkit is a small command-line virtual-machine monitor for macOS built on Apple's Virtualization framework. It was created in the crc-org ecosystem to provide a native, Go-oriented hypervisor path for local container and OpenShift workflows on Apple Silicon Macs.

Project history

The vfkit repository was created in January 2022, during the period when local VM-based developer tools were adapting to Apple Silicon. CRC had historically used HyperKit on macOS, but the CRC team documented two pressures in 2022: HyperKit was x86_64-only and lacked M1 support, while maintaining QEMU builds would bring a much larger codebase and maintenance surface.

vfkit's design uses Apple's Virtualization framework through Code-Hex/vz Go bindings. Conference material from FOSDEM and Container Plumbing Days in 2023 described the project as a native macOS hypervisor written in Go, intended to wrap Apple's framework in a long-lived CLI process and a Go configuration API.

Adoption history

vfkit's first clear adoption niche was CRC and podman-machine style local container virtualization on macOS. Container Plumbing Days 2023 explicitly described vfkit as a good fit for crc and podman-machine because Apple's framework offered modern Linux VM features on macOS while keeping the hypervisor codebase small.

The tool has also become visible as a standalone package in developer package managers, but its main significance remains as infrastructure beneath higher-level local development environments rather than as a general desktop VM application.

How it is used

Users invoke vfkit with explicit VM resources, a bootloader, disk images, and devices such as virtio-serial, virtio-fs, virtio-blk, virtio-rng, and virtio-net. The process starts the VM when vfkit starts and terminates it when vfkit exits, which fits supervisor-driven tools that need a controllable VM process.

The project also exposes github.com/crc-org/vfkit/pkg/config so Go programs can generate vfkit command lines programmatically. That API is useful for tools such as CRC that want to own the user workflow while delegating the macOS VM monitor layer to vfkit.

Why package nerds care

vfkit is one of the small command-line answers to a packaging-era problem created by Apple's architecture transition: how to ship local Linux VM support on macOS without bundling a large cross-platform emulator stack. Its importance is mainly in the Mac developer-tooling layer where container engines and Kubernetes distributions need reproducible VM startup.

Timeline

  • 2022-01: crc-org/vfkit was created on GitHub.
  • 2022-06: CRC documented the need to move beyond HyperKit for M1 support and evaluated Apple's Virtualization framework.
  • 2023-02: vfkit was presented in the FOSDEM Go devroom as a native macOS hypervisor written in Go.
  • 2023: Container Plumbing Days presented vfkit as a minimal hypervisor using Apple's Virtualization framework and suitable for crc and podman-machine.
  • 2026-01: GitHub releases show vfkit v0.6.x releases.

Related projects

  • vfkit is closely related to crc-org/crc, Podman machine, Apple's Virtualization framework, HyperKit, QEMU, and Code-Hex/vz. In this family, vfkit is the narrow CLI layer over Apple's framework rather than a broad emulator or a full user-facing VM manager.

security posture

Risk level: orange

infrastructure mutation or orchestration signal.

Risk classifier

orange risk · medium confidence · infrastructure

Why

  • infrastructure mutation or orchestration signal

Signals

  • text:virtualization

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
vfkitexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version0.6.4
manager updated2026-07-07
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:vfkit
Version0.6.4
Package managerHomebrew
Homepagehttps://github.com/crc-org/vfkit
Repositoryhttps://github.com/crc-org/vfkit
Last updated2026-07-07T19:15:06Z
Pulseupdated
Bottlenot recorded
Servicenone declared

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

vfkit

nix profile install nixpkgs#vfkit
  • normalized package name match
  • Matched by: Vfkit
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/vf/vfkit/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
MacPorts95%

vfkit

sudo port install vfkit
  • normalized package name match
  • Matched by: Vfkit
MacPorts ports tree · api.github.com · MacPorts ports tree: sysutils/vfkit/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • pkg.so package database
  • pkgdb category and tag curation