boma/roles/dev_env/defaults/main.yml
sjat 607423d0e7 dev_env: install acl for become_user file copies
When the login user differs from the become_user (ubongo connects as sjat,
the role copies files as claude), Ansible needs ACLs on its temp files;
without the acl package it falls back to an unsupported chmod syntax and
fails. Molecule didn't catch it (root login can chown directly).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-11 14:09:12 +02:00

52 lines
1.8 KiB
YAML

---
# dev_env — interactive developer environment (zsh/tmux/nvim) for workstation-class
# hosts. Its own role, never part of `base`. See the role README and ADR-015.
# Users who receive the environment. Empty = no-op. Set in group_vars for the
# workstation-class group (e.g. group_vars/control → [sjat, claude]).
dev_env__users: []
# APT packages. nvim + oh-my-posh are installed separately from pinned releases.
# (nvim uses mason internally for LSPs, so no system LSP packages are needed; node is
# present so mason's node-based servers work. direnv is referenced by the .zshrc.)
dev_env__packages:
- zsh
- tmux
- git
- stow
- acl # lets Ansible become_user an unprivileged user (sjat -> claude) for file copies
- build-essential
- curl
- ca-certificates
- fzf
- ripgrep
- direnv
- nodejs
- npm
# Pinned tool versions (ADR-014 — pin, don't track "latest").
dev_env__nvim_version: "v0.12.2"
dev_env__omp_version: "29.0.1"
# oh-my-zsh custom plugins (cloned per user into ~/.oh-my-zsh/custom/plugins).
dev_env__omz_custom_plugins:
- name: zsh-autosuggestions
repo: "https://github.com/zsh-users/zsh-autosuggestions.git"
- name: zsh-syntax-highlighting
repo: "https://github.com/zsh-users/zsh-syntax-highlighting.git"
# tmux plugins (pre-cloned per user into ~/.tmux/plugins; TPM loads them on tmux start).
# catppuccin is pinned to the v1 API the .tmux.conf targets.
dev_env__tmux_plugins:
- name: tpm
repo: "https://github.com/tmux-plugins/tpm.git"
version: master
- name: tmux-sensible
repo: "https://github.com/tmux-plugins/tmux-sensible.git"
version: master
- name: vim-tmux-navigator
repo: "https://github.com/christoomey/vim-tmux-navigator.git"
version: master
- name: tmux
repo: "https://github.com/catppuccin/tmux.git"
version: v1.0.3