Personal workstation · documented publicly
A workstation I can rebuild.¶
This repository rebuilds my workstation on Apple Silicon macOS and Ubuntu. Ansible, the automation engine, configures the system; chezmoi, the dotfile manager, puts the files in place.
- Targets
- macOS + Ubuntu
- Automation
- Ansible
- Dotfiles
- chezmoi
What it builds¶
The result is an opinionated terminal-first environment built around fish, tmux, Alacritty, Neovim, mise, Git tools, and a curated set of command-line utilities. On macOS, it also installs desktop applications and applies personal system defaults.
How the pieces fit together¶
-
01
Bootstrap
The POSIX
scripts/setup.shvalidates the platform and starts a disposable, repository-locked Ansible controller. -
02
Establish workstation state
Ansible installs Ubuntu prerequisites, creates the persistent repository checkout, and installs Homebrew on both supported targets.
-
03
Configure the workstation
Focused roles install packages and applications, apply dotfiles, and configure fish, mise, Neovim, Rancher Desktop, tmux, and system defaults.
-
04
Hand off to reconciliation
The final role prepares the persistent runtime used by
mise run reconcilefor future updates.
Choose what you need¶
Review the changes, choose an installation path, and learn how to reapply the configuration.
02 · Reference Find a keyboard shortcutLook up bindings for macOS, Alacritty, fish, tmux, and Neovim.
03 · AI tooling Configure OpenCode + OmOSet up local secrets, corporate overlays, model routing, and contextual notifications.
Design principles¶
- Repeatable over clever
- Repeated runs should converge on the same state.
- Visible over magical
- Package lists, roles, and managed files stay in the repository.
- Portable where practical
- Shared behavior works on macOS and Ubuntu; platform-specific changes stay explicit.
- Personal by design
- This is a working environment, not a universal starter kit.