Shell scripts and Ansible playbooks for bootstrapping a Linux development machine from scratch.
Every time I set up a new machine, I used to spend a day manually installing things and configuring them. This repo is the answer to that — a set of numbered scripts that take a bare Ubuntu installation to a fully configured development environment.
The scripts run in sequence: Script 0 installs Miniconda and initialises conda for bash. Script 1 triggers an Ansible installation that pulls in Ansible itself plus Python packages like PyWinRM and PyVmomi. Script 2 runs an Ansible playbook to generate SSH keys. Script 3 clones additional tool repositories and sets up the workspace.
The philosophy is "bootstrap from nothing" — you install git, clone this repo, and run the scripts. Everything else follows. It's not the most glamorous project, but it's one of the most practically useful things I've built. I've used it to provision at least a dozen machines over the years.
The Ansible integration means the setup is declarative and idempotent. Run it twice, nothing breaks. Add a new tool, add a task, re-run. It also includes Azure Ansible modules and VMware SDK support for when I need to manage cloud or virtualised infrastructure.