From 1ae898a9af1ef6ff6fcc40875a52b664e58b2432 Mon Sep 17 00:00:00 2001 From: Jane Alesi Date: Tue, 31 Mar 2026 13:00:47 +0200 Subject: [PATCH] feat(dev-tools): expand Ansible role with complete CLI tool inventory MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add all tools from infra.standards.md §4 and global Skills requirements: - CLI utilities: zoxide, fzf, gum, dust, bottom, scrot, shellcheck, shfmt - Git CLIs: github-cli, tea, glab - Python: ruff, uv - DevOps: terraform, docker suite, podman, cmake - Security: cosign, syft, trivy, certbot, dive - Docs: typst, pandoc, wp-cli - CalDAV: khal, vdirsyncer - 3D/CAD: openscad, freecad, f3d - Node.js global: @marp-team/marp-cli - Python pipx: semgrep, huggingface_hub[cli] --- ansible/roles/dev-tools/tasks/main.yml | 67 ++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) diff --git a/ansible/roles/dev-tools/tasks/main.yml b/ansible/roles/dev-tools/tasks/main.yml index fa97789..6c0b4e2 100644 --- a/ansible/roles/dev-tools/tasks/main.yml +++ b/ansible/roles/dev-tools/tasks/main.yml @@ -2,16 +2,83 @@ - name: Ensure core workstation development tools are installed community.general.pacman: name: + # Build essentials - git - base-devel + # CLI tools (infra.standards.md §4) - ripgrep + - ripgrep-all - fd - jq - bat - eza + - zoxide + - fzf + - gum + - dust + - bottom + - scrot + - shellcheck + - shfmt + # Git providers CLI + - github-cli + - tea + - glab + # Python toolchain + - ruff + - uv + # DevOps & IaC - ansible + - terraform + - docker + - docker-buildx + - docker-compose + - podman + - cmake + # Security & supply chain + - cosign + - syft + - trivy + - certbot + # Container inspection + - dive + # Email CLI + - himalaya + # Document toolchain (markdown-to-pdf skill) + - typst + - pandoc + # WordPress CLI + - wp-cli + # C/C++ toolchain (cpp skill) + - clang + # CalDAV tools (caldav-webcal skill) + - khal + - vdirsyncer + # 3D/CAD tools (openscad, freecad, f3d skills) + - openscad + - freecad + - f3d + # Terminal + - kitty state: present +- name: Ensure Node.js global CLI tools are installed + become: true + become_user: "{{ system_user }}" + command: pnpm add -g @marp-team/marp-cli + changed_when: false + tags: [nodejs, marp] + +- name: Ensure Python CLI tools are installed via pipx + become: true + become_user: "{{ system_user }}" + command: "pipx install {{ item }}" + loop: + - semgrep + - huggingface_hub[cli] + changed_when: false + tags: [python, pipx] + - name: Ensure redundant and non-core software is removed community.general.pacman: name: