/workstation-playbook

Ansible playbook for (Ubuntu) Python & Java & JS & Haskell & Rust dev & DevOps environment setup

Primary LanguageDockerfile

Workstation Setup

CircleCI

Assumptions

  • Ubuntu 21.10 (should mostly work on other releases though, and Debian should only take a few tweaks)
  • 🆕 ...or Manjaro. Might work with Arch, too.
  • You like the same tools as me...

Setup

Install Latest Ansible

Ubuntu

sudo apt-add-repository -y ppa:ansible/ansible
sudo apt install ansible

Arch / Manjaro

sudo pacman -S ansible

Run playbook

Note that this installs the Galaxy roles, but you can do this manually with:

ansible-galaxy install -r requirements.yml

Then:

Ubuntu

ansible-playbook -e "user=$USER" playbook.yml -K --skip-tags manjaro

Manjaro

ansible-playbook -e "user=$USER" playbook.yml -K --skip-tags ubuntu

Just run the configure role

ansible-playbook -e "user=$USER" playbook.yml --tags configure

Features

Using local and various excellent Ansible Galaxy roles, you get:

Tools, Shells, Editors

Communications

  • Slack, Signal

Various programming languages:

  • Python3 (+ Poetry)
  • Latest OpenJDK
  • Latest Node
  • Latest Haskell (GHC + Stack),
  • Latest Rust

DevOps / Systems Tooling

  • Nix, plus Nix Flakes
  • Docker CE
  • Terraform
  • Virtualbox
  • Kubernetes
  • nmap, htop, jq, httpie etc

...and more (see playbook).