Skip to content

Example flow

Example flow for refreshing a macOS source, reconciling Homebrew packages, and activating nix-darwin.

Updated View as Markdown

This flow assumes the workstation profile declares a Brewfile and may declare a nix-darwin flake. Replace workstation with the selected macOS profile.

Prepare and validate the source

outfitting-manager init --profile workstation

init refreshes a configured remote source by default and validates the selected profile. It does not install Homebrew packages or activate Nix.

Inspect package and Nix state

outfitting-manager diff --profile workstation

diff compares Homebrew and Nix system state with the selected profile’s declarations. It is read-only; differences or an unavailable comparison produce a nonzero exit status.

Reconcile Homebrew packages

outfitting-manager apply --profile workstation --no-refresh

apply reuses the source snapshot validated by init and installs missing packages from the profile’s Brewfile. It does not upgrade installed packages or activate nix-darwin. Homebrew may still access the network to install packages.

Activate nix-darwin when configured

outfitting-manager nix switch --profile workstation --no-refresh

Run this step when the selected profile declares a nix-darwin flake. switch builds and activates that system; successful Nix actions publish related lock state unless --no-push is supplied. See macOS commands for the other Nix actions, inventory capture, and recovery behavior.

For later maintenance, update upgrades installed Homebrew packages, while apply remains the operation for installing missing Brewfile declarations.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close