diff --git a/README.html b/README.html new file mode 100644 index 0000000..810722d --- /dev/null +++ b/README.html @@ -0,0 +1,365 @@ + + +
+ + + +Infrastructure-as-Code for a CachyOS Linux workstation, managed with +Ansible.
+localhost onlysite.ymlOn a fresh machine, run bootstrap.yml first. It handles
+the prerequisites that site.yml depends on:
Prerequisites before running bootstrap:
+sudo pacman -S ansible gitRun bootstrap:
+ansible-playbook -K -i inventory/hosts.yml bootstrap.ymlThen run the full site playbook:
+ansible-playbook -K -i inventory/hosts.yml site.ymlRun the full site playbook:
+ansible-playbook -K -i inventory/hosts.yml site.ymlRun only tasks matching a specific tag:
+ansible-playbook -K -i inventory/hosts.yml site.yml --tags <tagname>Skip tasks matching a tag:
+ansible-playbook -K -i inventory/hosts.yml site.yml --skip-tags <tagname>| Role | +Play | +Description | +
|---|---|---|
| firewall | +system | +ufw, default deny incoming, allow port 22 | +
| packages | +system | +General packages via pacman | +
| docker | +system | +Docker, enables service, adds user to docker group | +
| virtualization | +system | +qemu-full, virt-manager, libvirtd | +
| web | +system | +hcloud, hugo, tea | +
| flatpak | +system | +Flatpak and apps, MakeMKV device permissions | +
| gpg | +user | +Import GPG keys from private git repo | +
| ssh | +user | +Deploy SSH keys and config from pass | +
| pass | +user | +Clone pass password store | +
| dotfiles | +user | +Clone dotfiles and nvim repos, symlink configs | +
| scripts | +user | +Clone scripts repo, add to PATH, deploy Pushover credentials | +
| hotkeys | +user | +Deploy .desktop files, set Plasma 6 global shortcuts | +
.
+├── bootstrap.yml # New machine bootstrap
+├── site.yml # Main entry point
+├── inventory/ # Inventory files
+└── roles/ # Ansible roles
+
+