Vibeleaderboard
Index / tool
Visit github.com
Category
Developer Tools
Rank
No. 1823Tools index

Previous survey · No. 1831 ·

Pricing
Open Source
Type
TOOL
Builder
trycua
GitHub
15 stars
Date

About

HashiCorp Packer plugin for Lume, used to build macOS VM images for agent workloads.

What it does

It connects Packer’s declarative build workflow to Lume on Apple Silicon. A build can create a virtual machine from an IPSW image or clone an existing machine, start it, type boot commands over VNC, discover its network address, connect through SSH, and run Packer provisioners.

Why it's ranked here

The integration covers an unusually complete machine-image workflow, including creation, startup, unattended boot input, networking, and provisioning. However, visible unfinished areas weaken confidence: cloning carries an explicit warning in the source, shutdown cleanup is disabled, and the published component documentation still contains generic scaffolding text.

What's good

Configuration exposes practical controls for processors, memory, disk, display, headless operation, recovery mode, SSH, and boot commands. It rejects conflicting image and clone inputs early. It can host provisioning content, interpolate the host address and port into boot instructions, and return the resulting virtual machine as a Packer artifact.

Tradeoffs

This is tied to Lume and Apple Silicon, with Go, Packer, and Lume required for the documented development installation. Clone support is marked as probably broken. Normal run cleanup does not stop the machine, while cancellation cleanup only works after the machine name reaches shared state. Network discovery accepts syntactically invalid IPv4 values.

How to use it well

Use it when your team already standardizes machine preparation in Packer and needs Lume-backed macOS or Linux guests on Apple Silicon. Prefer the IPSW creation path, explicit SSH settings, and carefully tested boot commands. Treat cloning and lifecycle cleanup as areas requiring validation. It does not replace Lume, Packer, restore-image acquisition, or downstream workload orchestration.

Technical notes+

main.go registers one Packer builder named cli through plugin.NewSet. builder/lume/builder.go assembles a multistep pipeline for cleanup, optional HTTP serving, creation or cloning, Lume startup, communicator connection, and provisioning; it also enforces mutual exclusion between IPSW and VMBaseName. builder/lume/step_run.go parses VNC credentials from Lume output, drives boot input through bootcommand.NewVNCDriver, waits one minute, and stores cancellation and output channels in state. builder/lume/ssh.go obtains an address by running a Bash pipeline and matching the first IPv4-shaped string. builder/lume/helpers.go executes Lume directly or through /bin/bash -c, including PTY streaming. builder/lume/artifact.go represents the VM directory as the artifact and deletes that directory in Destroy. builder/lume/ssh_test.go tests only the address regular expression, including its acceptance of 256.256.256.256. docs/README.md remains generic Packer scaffolding documentation rather than project-specific installation guidance.

Observed

License
MPL-2.0
Primary language
Go
Interface
HashiCorp Packer builder plugin backed by the Lume CLI/API
Platform support
Builds macOS and Linux virtual machine images with Lume on Apple Silicon
Installation surface
Documented development flow installs Go, Packer, and Lume, then builds the plugin with Make
Testing structure
A Go test covers IPv4-pattern capture used during virtual machine address discovery

Read from README.md, go.mod, main.go, docs/README.md, version/version.go, builder/lume/ssh.go, builder/lume/builder.go, builder/lume/helpers.go, builder/lume/artifact.go, builder/lume/quiet_ui.go, builder/lume/ssh_test.go, builder/lume/step_run.go, builder/lume/step_cleanup.go, builder/lume/step_connect.go, builder/lume/step_clone_vm.go.

What it can do

  • Build macOS virtual machine images

    Packer configuration files and macOS installation mediamacOS VM image files

  • Configure macOS VM settings for agent workloads

    VM configuration parameters and agent requirementsOptimized macOS VM configuration

  • Provision macOS VMs with software packages

    Package lists and installation scriptsPre-configured macOS VM images with installed software

  • Automate macOS VM image creation workflow

    Packer templates and build parametersAutomated build process and resulting VM images

  • Integrate with HashiCorp Packer ecosystem

    Existing Packer workflows and configurationsExtended Packer functionality for macOS VM builds

Tags

packerlumemacosvirtualizationagents

Tech Stack

Go

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.