From 43198d9aabd41c5a11702e41b7502307ecf5de62 Mon Sep 17 00:00:00 2001 From: Robert Date: Mon, 2 Nov 2026 16:32:24 -0700 Subject: [PATCH] changed README.md --- README.md | 67 ++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 57 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 8feb9ec..c0b43ae 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,21 @@ This repository is my main repository for Ansible Pull. +## Supported Distributions + +The bootstrap script automatically detects the operating system using `/etc/os-release` and selects the appropriate package manager and Ansible playbook. + +| Distribution | Package Manager | Playbook | +|---|---|---| +| Ubuntu | APT | `local.yml` | +| Debian | APT | `local.yml` | +| Arch-based distributions (including CachyOS) | Pacman | `arch.yml` | + ## New Server Bootstrap -For a new Ubuntu server, log in as `root` and download the bootstrap script directly from Gitea: +For a new server or workstation, log in as `root` or use an account with sudo privileges. + +Download the bootstrap script directly from Gitea: ```bash wget -O /tmp/bootstrap.sh https://gitea.romerozone.top/robert/ansible_pull_master/raw/branch/master/bootstrap.sh @@ -22,15 +34,50 @@ Run the bootstrap: /tmp/bootstrap.sh ``` -The bootstrap script will: +If running from a normal user account, use: -1. Install Git and Ansible. -2. Prompt for the Ansible Vault password. -3. Store the Vault password securely in `/root/.ansible_vault_password`. -4. Configure Ansible to use the Vault password. -5. Run the initial `ansible-pull`. -6. Retrieve the repository and apply the server configuration. +```bash +sudo /tmp/bootstrap.sh +``` -After the initial pull completes, the server is managed by this Ansible Pull repository. +### What the Bootstrap Does -The Ansible playbook creates the `Default` user and other required configuration, so no normal user account is required before running the bootstrap. +The bootstrap script: + +1. Detects the operating system. +2. Installs Git and Ansible using the appropriate package manager. +3. Selects the corresponding Ansible playbook. +4. Runs the initial `ansible-pull`. +5. Retrieves the repository and applies the system configuration. + +### Ubuntu and Debian + +For Ubuntu and Debian systems, the bootstrap additionally: + +1. Prompts for the Ansible Vault password. +2. Stores the password securely in `/root/.ansible_vault_password`. +3. Configures Ansible to use the Vault password. +4. Runs `local.yml`. + +### Arch-Based Distributions + +For Arch-based distributions, the bootstrap: + +1. Performs a full system update using Pacman. +2. Installs Git and Ansible. +3. Runs `arch.yml`. + +No Ansible Vault password is required for the Arch playbook. + +## After Bootstrap + +After the initial pull completes, the system is configured and managed by this Ansible Pull repository. + +The Ubuntu/Debian playbook creates the **Default User** when needed, along with the Ansible service account and other required configuration. + +The Arch-based playbook configures Fastfetch and ensures it starts in interactive Bash. + +## Playbooks + +- `local.yml` — Ubuntu and Debian server configuration. +- `arch.yml` — Arch-based workstation configuration.