Skip to content

Introduction

Arch Linux Post-Install Automation is an Ansible playbook that takes a fresh Arch Linux (or Arch-based, e.g. CachyOS) install and turns it into a fully configured daily-driver machine — without manually installing packages, enabling services, or configuring your shell one by one.

What it does

Run against a target host, the playbook will:

  • Bootstrap the CachyOS and BlackArch pacman repositories
  • Install a full package set via pacman, the AUR (via yay), Flatpak, and Snap
  • Apply basic system hardening (firewalld, fail2ban, doas, a non-default SSH port, disabled password authentication)
  • Create a standard set of user directories (Documents, Downloads, Pictures/wallpaper, git, …)
  • Install and configure Zsh with Oh My Zsh, Powerlevel10k, and a Nerd Font
  • Generate SSH and GPG keys and configure git for signed commits
  • Clone a set of personal repositories (dotfiles, wallpapers, other projects)

Why it exists

Re-installing Arch (or setting up a new machine) used to mean an hour or more of repetitive manual setup. This playbook exists so that process is a single command: point Ansible at a host, get a coffee, and come back to a fully configured system.

Note

This playbook is opinionated — it installs my preferred packages and shell setup. If you want to reuse it, fork it and adjust the package lists and variables to your own taste (see Usage).