Skip to content

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

  1. 01
    Bootstrap

    The POSIX scripts/setup.sh validates the platform and starts a disposable, repository-locked Ansible controller.

  2. 02
    Establish workstation state

    Ansible installs Ubuntu prerequisites, creates the persistent repository checkout, and installs Homebrew on both supported targets.

  3. 03
    Configure the workstation

    Focused roles install packages and applications, apply dotfiles, and configure fish, mise, Neovim, Rancher Desktop, tmux, and system defaults.

  4. 04
    Hand off to reconciliation

    The final role prepares the persistent runtime used by mise run reconcile for future updates.

Choose what you need

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.