Help us shape the future of Go! Take the 2026 Go Developer Survey

applecontainer

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 18, 2026 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package applecontainer is an Apple `container` implementation of runtime.Runtime targeting macOS 15+ on arm64.

The runtime is a thin cgo wrapper around libACBridge.dylib, a Swift dynamic library that imports apple/container's ContainerAPIClient and speaks XPC to the system container-apiserver daemon. The daemon is installed via `brew install container` and started with `container system start`. New returns a *runtime.DaemonUnavailableError if the daemon is not reachable.

Only darwin/arm64 builds compile against the bridge. Other platforms link a stub that returns "platform unsupported" from every constructor; the package itself is importable from any build so callers can keep platform-agnostic wiring.

PR-A scope: New + Ping only. Every other Runtime method returns runtime.ErrNotImplemented and is filled in by PR-B onward (see design/status.md M6).

See design/runtime-applecontainer.md for the full architecture.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Options

type Options struct {
	// PingTimeoutSeconds bounds the daemon-health probe in New. Zero
	// uses the bridge default (5s).
	PingTimeoutSeconds int
}

Options configure New.

type PingResult

type PingResult struct {
	APIServerVersion string `json:"apiServerVersion"`
	APIServerBuild   string `json:"apiServerBuild"`
	APIServerCommit  string `json:"apiServerCommit"`
	AppRoot          string `json:"appRoot"`
	InstallRoot      string `json:"installRoot"`
}

PingResult is the parsed result of a daemon health-check probe.

type Runtime

type Runtime struct{}

Runtime is the apple-container backend handle. On non-darwin/arm64 platforms it is unconstructable — New always returns an error.

func New

func New(_ context.Context, _ Options) (*Runtime, error)

New always returns an unsupported-platform error off darwin/arm64.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL