Skip to content

Commit 0a3fe3d

Browse files
committed
fix: sync website copy with CLI behavior
- Update tool count from 60+ to 80+ (actual catalog has 88 packages) - Fix macOS preferences count 24→23 to match DefaultPreferences - Add missing CLI commands (doctor, update, version) and flags to docs - Add --import flag to snapshot docs - Fix all bare curl URLs to include https:// - Unify preset descriptions across homepage, docs, and CLI - Fix non-interactive install docs to require --silent flag - Correct snapshot dev tools list to match capture.go detection - Fix 'rust' → 'rustup' in homepage preset example - Update checksum verification wording in FAQ
1 parent 6dca757 commit 0a3fe3d

File tree

8 files changed

+351
-304
lines changed

8 files changed

+351
-304
lines changed

src/docs/cli-reference.md

Lines changed: 130 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# CLI Reference
22

3-
The `openboot` command-line tool handles both installation and environment capture.
3+
The `openboot` command-line tool handles installation, environment capture, diagnostics, and updates.
44

55
## Installation Commands
66

@@ -16,13 +16,13 @@ The TUI starts with the `developer` preset pre-selected. Use arrow keys to navig
1616

1717
### `openboot --preset <name>`
1818

19-
Install a preset directly. Available presets: `minimal`, `developer`, `full`.
19+
Launch the TUI with a preset's packages pre-selected. Available presets: `minimal`, `developer`, `full`.
2020

2121
```
2222
openboot --preset developer
2323
```
2424

25-
This launches the TUI with the specified preset's packages pre-selected.
25+
You can still toggle individual packages on or off before confirming. To skip the TUI entirely, combine with `--silent`.
2626

2727
### `openboot --user <username>/<slug>`
2828

@@ -32,7 +32,7 @@ Install from a remote custom config hosted on openboot.dev.
3232
openboot --user sarah/frontend-team
3333
```
3434

35-
This fetches the config and launches the TUI with those packages pre-selected.
35+
This fetches the config and installs its packages directly.
3636

3737
### `openboot --dry-run`
3838

@@ -44,11 +44,37 @@ openboot --preset full --dry-run
4444

4545
Output shows the full list of formulae and casks that would be installed, along with any shell configuration or macOS preference changes.
4646

47+
### `openboot --silent`
48+
49+
Non-interactive mode — skips all prompts and uses defaults. Useful for CI/CD pipelines or scripted setups.
50+
51+
```
52+
openboot --preset developer --silent
53+
```
54+
55+
Requires `OPENBOOT_GIT_NAME` and `OPENBOOT_GIT_EMAIL` environment variables if Git is not already configured.
56+
57+
### Additional Install Flags
58+
59+
| Flag | Description |
60+
|------|-------------|
61+
| `-p, --preset <name>` | Use a preset: `minimal`, `developer`, `full` |
62+
| `-u, --user <name>` | Install from an openboot.dev config |
63+
| `-s, --silent` | Non-interactive mode (for CI/CD) |
64+
| `--dry-run` | Preview changes without installing |
65+
| `--resume` | Resume an incomplete installation |
66+
| `--packages-only` | Install packages only, skip system configuration (git, shell, macOS prefs) |
67+
| `--shell <mode>` | Shell setup mode: `install` or `skip` |
68+
| `--macos <mode>` | macOS preferences: `configure` or `skip` |
69+
| `--dotfiles <mode>` | Dotfiles mode: `clone`, `link`, or `skip` |
70+
| `--update` | Update Homebrew before installing |
71+
| `--rollback` | Restore backed-up config files |
72+
4773
## Snapshot Commands
4874

4975
### `openboot snapshot`
5076

51-
Capture your current Mac's development environment. Scans Homebrew packages, macOS preferences, shell config, git config, and installed dev tools.
77+
Capture your current Mac's development environment. Scans Homebrew packages, npm globals, macOS preferences, shell config, git config, and installed dev tools.
5278

5379
```
5480
openboot snapshot
@@ -74,7 +100,7 @@ Output the snapshot as JSON to stdout. Useful for piping to other tools or inspe
74100

75101
```
76102
openboot snapshot --json
77-
openboot snapshot --json | jq '.homebrew.formulae'
103+
openboot snapshot --json | jq '.packages.formulae'
78104
```
79105

80106
### `openboot snapshot --local`
@@ -85,23 +111,118 @@ Save the snapshot to `~/.openboot/snapshot.json` instead of uploading to openboo
85111
openboot snapshot --local
86112
```
87113

114+
### `openboot snapshot --import <file-or-url>`
115+
116+
Restore a development environment from a previously exported snapshot. Accepts a local JSON file or a URL.
117+
118+
```
119+
openboot snapshot --import my-setup.json
120+
openboot snapshot --import https://example.com/snapshot.json
121+
openboot snapshot --import my-setup.json --dry-run
122+
```
123+
124+
The import flow launches the snapshot editor TUI so you can review and toggle items before installing.
125+
126+
### Snapshot Flags
127+
128+
| Flag | Description |
129+
|------|-------------|
130+
| `--local` | Save snapshot to `~/.openboot/snapshot.json` |
131+
| `--json` | Output as JSON to stdout |
132+
| `--dry-run` | Preview without saving, uploading, or installing |
133+
| `--import <path>` | Restore from a local file or URL |
134+
135+
## Utility Commands
136+
137+
### `openboot doctor`
138+
139+
Run diagnostic checks on your development environment. Checks network connectivity, disk space, Homebrew health, Git configuration, shell setup, and essential tools.
140+
141+
```
142+
openboot doctor
143+
```
144+
145+
Example output:
146+
147+
```
148+
✓ Network connectivity
149+
✓ Disk space (48 GB free)
150+
✓ Homebrew installed
151+
✓ Homebrew health
152+
✓ Git installed
153+
✓ Git identity
154+
✓ Oh-My-Zsh installed
155+
✓ .zshrc exists
156+
157+
All checks passed! Your environment is healthy.
158+
```
159+
160+
### `openboot update`
161+
162+
Update Homebrew package definitions and upgrade all installed packages.
163+
164+
```
165+
openboot update
166+
openboot update --dry-run
167+
```
168+
169+
### `openboot update --self`
170+
171+
Update the OpenBoot binary itself to the latest release from GitHub.
172+
173+
```
174+
openboot update --self
175+
```
176+
177+
### `openboot version`
178+
179+
Print the current OpenBoot version.
180+
181+
```
182+
openboot version
183+
```
184+
88185
## Environment Variables
89186

187+
### Install Script Variables
188+
189+
These are used when running the `curl | bash` install command:
190+
90191
| Variable | Description | Default |
91192
|----------|-------------|---------|
92193
| `OPENBOOT_VERSION` | Override the version of OpenBoot to install | Latest release |
93194
| `OPENBOOT_INSTALL_DIR` | Override the installation directory for the binary | `~/.openboot/bin` |
195+
| `OPENBOOT_DRY_RUN` | Set to `true` to preview the install script without changes ||
196+
| `OPENBOOT_SKIP_CHECKSUM` | Set to `true` to skip SHA256 checksum verification ||
197+
198+
### CLI Variables
94199

95-
### Example
200+
These are used by the `openboot` binary:
201+
202+
| Variable | Description |
203+
|----------|-------------|
204+
| `OPENBOOT_GIT_NAME` | Git user name (required in `--silent` mode if not configured) |
205+
| `OPENBOOT_GIT_EMAIL` | Git user email (required in `--silent` mode if not configured) |
206+
| `OPENBOOT_PRESET` | Default preset to use |
207+
| `OPENBOOT_USER` | Remote config username/slug |
208+
| `OPENBOOT_DOTFILES` | Dotfiles repository URL |
209+
210+
### Examples
96211

97212
Install a specific version:
98213

99214
```
100-
OPENBOOT_VERSION=0.3.1 curl -fsSL openboot.dev/install.sh | bash
215+
OPENBOOT_VERSION=0.3.1 curl -fsSL https://openboot.dev/install.sh | bash
101216
```
102217

103218
Install to a custom directory:
104219

105220
```
106-
OPENBOOT_INSTALL_DIR=~/.local/bin curl -fsSL openboot.dev/install.sh | bash
221+
OPENBOOT_INSTALL_DIR=~/.local/bin curl -fsSL https://openboot.dev/install.sh | bash
222+
```
223+
224+
Silent mode for CI:
225+
226+
```
227+
OPENBOOT_GIT_NAME="CI Bot" OPENBOOT_GIT_EMAIL="ci@example.com" openboot --preset developer --silent
107228
```

src/docs/custom-configs.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,13 @@ Already have a Brewfile? Upload it in the dashboard and OpenBoot will parse it i
3737
Every config gets a shareable install URL:
3838

3939
```
40-
curl -fsSL openboot.dev/<username>/<slug>/install.sh | bash
40+
curl -fsSL https://openboot.dev/<username>/<slug>/install.sh | bash
4141
```
4242

4343
For example, if your GitHub username is `sarah` and your config is named `frontend-team`:
4444

4545
```
46-
curl -fsSL openboot.dev/sarah/frontend-team/install.sh | bash
46+
curl -fsSL https://openboot.dev/sarah/frontend-team/install.sh | bash
4747
```
4848

4949
Share this URL in your team's README, onboarding docs, or Slack. Anyone who runs it gets your exact setup.

src/docs/faq.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ This is a common concern. Here's how OpenBoot handles it:
2121
- The install script is **open source** — review it anytime at [github.com/openbootdotdev/openboot](https://github.com/openbootdotdev/openboot)
2222
- The script is hosted on openboot.dev (Cloudflare Workers) and served over HTTPS
2323
- **No telemetry** is collected — no analytics, no tracking, no phoning home
24-
- You can download and inspect the script before running it: `curl -fsSL openboot.dev/install.sh > install.sh && cat install.sh`
25-
- The binary itself is downloaded from GitHub Releases with checksum verification
24+
- You can download and inspect the script before running it: `curl -fsSL https://openboot.dev/install.sh > install.sh && cat install.sh`
25+
- The binary itself is downloaded from GitHub Releases with SHA256 checksum verification (can be skipped with `OPENBOOT_SKIP_CHECKSUM=true` if needed)
2626

2727
## What if I already have Homebrew installed?
2828

@@ -33,7 +33,7 @@ OpenBoot detects existing Homebrew installations and skips the Homebrew install
3333
Re-run the install script:
3434

3535
```
36-
curl -fsSL openboot.dev/install.sh | bash
36+
curl -fsSL https://openboot.dev/install.sh | bash
3737
```
3838

3939
This downloads the latest binary and replaces the existing one. Your configs, snapshots, and auth tokens are not affected.

src/docs/getting-started.md

Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,22 @@
11
# Getting Started
22

3-
OpenBoot is an open-source command-line tool that bootstraps your macOS development environment in minutes. Instead of manually installing Homebrew, CLI tools, GUI apps, configuring your shell, and tweaking macOS settings one by one, OpenBoot handles it all with a single command — through a beautiful interactive TUI that lets you pick exactly what you want.
3+
OpenBoot is an open-source command-line tool for macOS developers. Whether you're setting up a brand-new Mac or capturing an existing one, OpenBoot has you covered:
44

5-
## System Requirements
5+
- **New Mac?** Bootstrap your entire dev environment in minutes — Homebrew packages, GUI apps, dotfiles, shell config, and macOS preferences — all through an interactive TUI.
6+
- **Already set up?** Run `openboot snapshot` to capture what you have. Save it locally or share it as a config URL — your choice.
7+
8+
Pick the path that fits:
9+
10+
## Path 1: Bootstrap a New Mac
11+
12+
### System Requirements
613

714
- **macOS 12 (Monterey)** or later
815
- **Apple Silicon (M1/M2/M3/M4)** and **Intel** Macs are both supported
916
- An internet connection (packages are downloaded from Homebrew)
1017
- Admin privileges (you'll be prompted for your password during install)
1118

12-
## Quick Install
19+
### Quick Install
1320

1421
Open Terminal and run:
1522

@@ -19,7 +26,7 @@ curl -fsSL https://openboot.dev/install.sh | bash
1926

2027
That's it. One line.
2128

22-
## What Happens When You Run It
29+
### What Happens When You Run It
2330

2431
Here's exactly what the install script does, in order:
2532

@@ -33,7 +40,7 @@ Here's exactly what the install script does, in order:
3340

3441
5. **Installs your selections** — once you confirm, OpenBoot skips already-installed packages, then installs CLI tools in parallel and GUI apps sequentially (with terminal access for any password prompts). It also configures Oh-My-Zsh (with plugins and a theme), sets up useful shell aliases, and applies macOS preference tweaks.
3542

36-
## First Run Experience
43+
### First Run Experience
3744

3845
When the TUI launches, you'll see:
3946

@@ -44,3 +51,21 @@ When the TUI launches, you'll see:
4451
The TUI shows which packages are already installed on your system (marked with a check) so you won't reinstall anything unnecessarily.
4552

4653
After installation completes, restart your terminal or run `source ~/.zshrc` to pick up the new shell configuration.
54+
55+
## Path 2: Snapshot Your Existing Mac
56+
57+
Already have your Mac configured just the way you like it? Snapshot captures your current setup — Homebrew packages, macOS preferences, shell config, and git settings — so you can save it locally or share it.
58+
59+
```
60+
curl -fsSL https://openboot.dev/install.sh | bash -s -- snapshot
61+
```
62+
63+
Or if you already have `openboot` installed:
64+
65+
```
66+
openboot snapshot
67+
```
68+
69+
Snapshot walks you through an interactive review of everything it found. You can toggle individual items on or off before deciding to save locally (`--local`) or upload to openboot.dev.
70+
71+
For full details, see the [Snapshot](/docs#snapshot) documentation.

src/docs/presets.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,38 +6,38 @@ Presets are curated collections of packages designed for different use cases. Ea
66

77
### minimal
88

9-
Lightweight CLI essentials for servers, containers, or developers who prefer a lean setup.
9+
CLI essentials for servers, containers, or minimalists. Fast and lightweight.
1010

1111
**CLI tools:** curl, wget, jq, yq, ripgrep, fd, bat, eza, fzf, zoxide, htop, btop, tree, tldr, gh, git-delta, lazygit, stow
1212

1313
**GUI apps:** Warp, Raycast, Maccy, Stats
1414

1515
```
16-
curl -fsSL openboot.dev/install.sh | bash -s -- --preset minimal
16+
curl -fsSL https://openboot.dev/install.sh | bash -s -- --preset minimal
1717
```
1818

1919
### developer (recommended)
2020

21-
A ready-to-code Mac setup with everything you need to start building immediately. Includes all of `minimal` plus languages, Docker, editors, and browsers.
21+
Ready-to-code Mac setup. Everything you need to start building immediately. Includes all of `minimal` plus languages, Docker, editors, and browsers.
2222

2323
**CLI tools (additions over minimal):** node, go, pnpm, docker, docker-compose, tmux, neovim, httpie
2424

2525
**GUI apps (additions over minimal):** VS Code, OrbStack, Chrome, Arc, Postman, Notion, Scroll Reverser
2626

2727
```
28-
curl -fsSL openboot.dev/install.sh | bash -s -- --preset developer
28+
curl -fsSL https://openboot.dev/install.sh | bash -s -- --preset developer
2929
```
3030

3131
### full
3232

33-
The complete dev environment — every language, DevOps tool, database, and AI utility we recommend. Best for polyglot developers, DevOps engineers, or anyone who wants it all.
33+
Complete dev environment with languages, DevOps, databases, and AI tools. Best for polyglot developers, DevOps engineers, or anyone who wants it all.
3434

3535
**CLI tools (additions over developer):** python, uv, rustup, deno, bun, kubectl, helm, k9s, terraform, awscli, sqlite, postgresql, redis, duckdb, ollama, llm
3636

3737
**GUI apps (additions over developer):** Cursor, Firefox, Proxyman, Obsidian, Figma, IINA, Keka, AlDente, Rectangle
3838

3939
```
40-
curl -fsSL openboot.dev/install.sh | bash -s -- --preset full
40+
curl -fsSL https://openboot.dev/install.sh | bash -s -- --preset full
4141
```
4242

4343
## Customizing During Install
@@ -53,14 +53,21 @@ This means you can start with `developer` but add `kubectl` from `full`, or remo
5353

5454
## Non-Interactive Install
5555

56-
If you want to skip the TUI and install a preset exactly as defined (useful for CI or scripting), the `--preset` flag with no TUI will install everything in the preset without prompting:
56+
If you want to skip the TUI and install a preset exactly as defined (useful for CI or scripting), combine `--preset` with `--silent`:
5757

5858
```
59-
curl -fsSL openboot.dev/install.sh | bash -s -- --preset developer
59+
curl -fsSL https://openboot.dev/install.sh | bash -s -- --preset developer --silent
60+
```
61+
62+
In silent mode, Git name and email must be set via environment variables (if not already configured):
63+
64+
```
65+
OPENBOOT_GIT_NAME="Your Name" OPENBOOT_GIT_EMAIL="you@example.com" \
66+
curl -fsSL https://openboot.dev/install.sh | bash -s -- --preset developer --silent
6067
```
6168

6269
Add `--dry-run` to preview what would be installed without actually installing anything:
6370

6471
```
65-
curl -fsSL openboot.dev/install.sh | bash -s -- --preset developer --dry-run
72+
curl -fsSL https://openboot.dev/install.sh | bash -s -- --preset developer --dry-run
6673
```

0 commit comments

Comments
 (0)