Config Options

Every OpenBoot config β€” whether created from a preset, a snapshot, or the dashboard β€” follows the same structure. Here’s what each field does.

Full Example

{
  "name": "frontend-team",
  "description": "Standard setup for our frontend developers",
  "base_preset": "developer",
  "packages": [
    { "name": "node", "type": "formula" },
    { "name": "pnpm", "type": "formula" },
    { "name": "ripgrep", "type": "formula" },
    { "name": "visual-studio-code", "type": "cask" },
    { "name": "arc", "type": "cask" },
    { "name": "typescript", "type": "npm" },
    { "name": "homebrew/cask-fonts", "type": "tap" }
  ],
  "custom_script": "mkdir -p ~/projects\ngit clone git@github.com:yourorg/main-repo.git ~/projects/main-repo",
  "dotfiles_repo": "https://github.com/yourorg/team-dotfiles.git",
  "snapshot": null,
  "alias": "fe",
  "visibility": "unlisted"
}

Fields

name

Display name for the config. Used as the page title and in the dashboard.

  • Type: string
  • Required: yes
  • Example: "frontend-team"

description

Optional description shown on the config page.

  • Type: string
  • Required: no
  • Example: "Standard setup for our frontend developers"

base_preset

Which preset to start from. The preset’s packages are included unless individually removed.

  • Type: string
  • Options: "minimal", "developer", "full"
  • Required: no
  • Default: none (empty config)

packages

The tools and apps to install. Stored as an array of package objects, each with a name and type.

  • formula β€” CLI tools installed via brew install
  • cask β€” GUI apps installed via brew install --cask
  • npm β€” Global npm packages installed via npm install -g
  • tap β€” Third-party Homebrew repositories added via brew tap

Each entry is an object: { "name": "package-name", "type": "formula" | "cask" | "npm" | "tap" }. Names must match Homebrew or npm package names exactly. Taps are added before formulae and casks are installed.

custom_script

Shell commands that run after all packages are installed. Use this for project-specific setup like cloning repos, generating SSH keys, or configuring services.

  • Type: string (newline-separated commands)
  • Required: no
  • Runs as: bash (errors are logged but don’t stop the install)
mkdir -p ~/projects
git clone git@github.com:yourorg/api.git ~/projects/api
ssh-keygen -t ed25519 -C "dev@yourcompany.com" -f ~/.ssh/id_ed25519 -N ""

dotfiles_repo

Git URL to a dotfiles repository. OpenBoot clones it to ~/.dotfiles and optionally symlinks with GNU Stow.

  • Type: string (Git URL)
  • Required: no
  • Example: "https://github.com/yourname/dotfiles.git"

See Dotfiles & Shell for setup details.

snapshot

Snapshot data attached to this config (auto-populated when creating from openboot snapshot). Contains the raw scan results β€” packages, preferences, shell config, git settings, dev tool versions.

  • Type: object or null
  • Required: no
  • Usually: managed automatically, not edited by hand

alias

Short URL alias for easy sharing. If set, this alias becomes the primary way to install the config β€” for example, openboot install my-setup instead of openboot install username/slug. The alias also works as a short URL: openboot.dev/my-setup.

When a user runs openboot install <word>, the CLI checks aliases first before falling back to username/default.

  • Type: string
  • Required: no
  • Must be: unique across all configs

visibility

Controls who can see and install this config.

  • Type: string
  • Default: "unlisted"
  • Options:
    • "public" β€” listed on your profile, install URL works for everyone
    • "unlisted" β€” not listed on your profile, but install URL still works if shared
    • "private" β€” only you can access. Run openboot login first, then openboot install yourname/slug

Export

You can export any config as a JSON file from the dashboard. Click the Export button on a config card to download a .json file containing all config data (name, packages, custom script, dotfiles repo, snapshot, visibility, and alias).

macOS Preferences Whitelist

These are the 26 system settings that OpenBoot can configure. Only these are captured by openboot snapshot and applied during install. In the dashboard, preferences are grouped into collapsible accordion sections by category.

Dock

SettingDescriptionDefault
Auto-hide DockAutomatically hide and show the Dockon
Auto-hide delay (s)Delay before Dock appears on hover β€” 0 for instant0
Icon sizeDock icon size in pixels48
Show recent appsShow recently used apps in a separate Dock sectionoff
Position on screenWhich edge the Dock appears on (bottom, left, right)bottom
Minimize animationVisual effect when minimizing windows (genie or scale)genie
Show only active appsHide non-running apps from the Dockoff
Animate app launchesBounce icons when launching an appon

Finder

SettingDescriptionDefault
Default view styleHow files display in new windows (icon, list, column, gallery)list
New window opensDefault location for new Finder windowsHome folder
Default search scopeWhere Finder searches by default (This Mac, current folder)Current folder
Show path barFull folder path at bottom of windowson
Show status barItem count and disk space at bottom of windowson
Show hidden filesShow files and folders starting with a dotoff
Always show file extensionsShow extensions for all fileson
Show full path in title barDisplay POSIX path in window titleoff

Trackpad

SettingDescriptionDefault
Tap to clickTap the trackpad to click instead of pressing downon
Natural scrollingScroll content in the direction your fingers moveon
Three-finger dragDrag windows and items using three fingersoff

Desktop

SettingDescriptionDefault
Click desktop to show itClick wallpaper to hide all windowsoff

Keyboard

SettingDescriptionDefault
Key repeat rateHow fast keys repeat when held β€” lower = faster2
Delay until key repeatHow long before a held key starts repeating15
Press and hold for accentsShow accent menu when holding a key (disable for faster repeat)off

Screenshots

SettingDescriptionDefault
Screenshot formatFile format for screenshots (PNG, JPEG, PDF, TIFF)PNG
Disable window shadowsRemove drop shadows from window screenshotson
SettingDescriptionDefault
Show Sound in menu barAlways show volume control in the menu baron