96 lines
2 KiB
YAML
96 lines
2 KiB
YAML
---
|
|
- name: Bootstrap fresh installation
|
|
hosts: all
|
|
gather_facts: true
|
|
roles:
|
|
# Handle distribution-specific changes before the generic ones
|
|
- role: system/fedora
|
|
become: true
|
|
when: ansible_distribution == "Fedora"
|
|
|
|
- role: system/el
|
|
become: true
|
|
when: ansible_distribution in [ "AlmaLinux", "CentOS" ]
|
|
|
|
# Upgrade all packages and install the basic-bitch ones
|
|
- role: system/base
|
|
become: true
|
|
|
|
# Enable Flathub repository and install configured flatpaks
|
|
- role: system/flatpak
|
|
tags: flatpak
|
|
|
|
# Install Podman and configure UIDs/GIDs for rootless usage
|
|
- role: system/podman
|
|
become: true
|
|
tags: podman
|
|
|
|
# Install and configure SSH server
|
|
- role: system/sshd
|
|
become: true
|
|
tags: sshd
|
|
|
|
# Install the Wireguard admin VPN
|
|
- role: system/wg-admin
|
|
become: true
|
|
tags: wg-admin
|
|
|
|
# Handle basic user configuration
|
|
- user/base
|
|
|
|
# Shell utilities
|
|
- role: user/shell/zsh
|
|
tags: zsh
|
|
- role: user/shell/tmux
|
|
tags: tmux
|
|
- role: user/editors/neovim
|
|
tags: neovim
|
|
|
|
# Directory for temporary files
|
|
- role: user/tmpfiles
|
|
become: true
|
|
tags: tmpfiles
|
|
|
|
# Configure git
|
|
- role: user/git
|
|
tags: git
|
|
|
|
# Configure ssh
|
|
- role: user/ssh
|
|
tags: ssh
|
|
|
|
# Set up GPG
|
|
- role: user/gpg
|
|
tags: gpg
|
|
|
|
# Configure Alacritty terminal
|
|
- role: user/terminals/alacritty
|
|
tags: alacritty
|
|
|
|
# Configure Kitty terminal
|
|
- role: user/terminals/kitty
|
|
tags: kitty
|
|
|
|
# Install fonts
|
|
- role: user/fonts
|
|
tags: fonts
|
|
|
|
# Install Bitwarden CLI
|
|
- role: user/secrets/bw
|
|
tags: bw
|
|
|
|
# Install HashiCorp Vault
|
|
- role: user/secrets/hcv
|
|
tags: hcv
|
|
|
|
# Install and configure Emacs
|
|
- role: user/editors/emacs
|
|
tags: emacs
|
|
|
|
# Install and configure VSCode
|
|
- role: user/editors/vscode
|
|
tags: vscode
|
|
|
|
# Install and configure Helix
|
|
- role: user/editors/helix
|
|
tags: helix
|