57 lines
1.8 KiB
YAML

---
# Shell role defaults
# List of users to configure zsh for
# By default, only configure the ansible user
# Override in host_vars to add more users
shell_users:
- "{{ ansible_user | default(ansible_user_id) }}"
# Additional users to configure (appended to shell_users)
# Use this to add users WITHOUT having to repeat ansible_user
# Example in host_vars:
# shell_additional_users:
# - beast
# - ladmin
shell_additional_users: []
# Shell configuration mode:
# - minimal: aliases-only (safe for servers; does not overwrite ~/.zshrc)
# - full: install oh-my-zsh + powerlevel10k + plugins and deploy managed ~/.zshrc
shell_mode: minimal
# Packages installed for all modes.
shell_packages_common:
- zsh
- tmux
- fzf
# Extra packages for full mode.
shell_packages_full_extra:
- git
# Effective package list.
shell_packages: "{{ shell_packages_common + (shell_packages_full_extra if shell_mode == 'full' else []) }}"
# If true, change users' login shell to zsh.
shell_set_default_shell: false
# Path (relative to the user's home) for the managed aliases file.
shell_aliases_filename: ".zsh_aliases_ansible"
# Line added to ~/.zshrc to source the managed aliases file.
shell_zshrc_source_line: '[ -f "$HOME/{{ shell_aliases_filename }}" ] && source "$HOME/{{ shell_aliases_filename }}"'
# Full mode settings
shell_install_oh_my_zsh: "{{ shell_mode == 'full' }}"
shell_install_powerlevel10k: "{{ shell_mode == 'full' }}"
shell_install_plugins: "{{ shell_mode == 'full' }}"
shell_deploy_managed_zshrc: "{{ shell_mode == 'full' }}"
# Zsh plugins cloned into oh-my-zsh custom plugins (full mode only).
zsh_plugins:
- name: "zsh-syntax-highlighting"
repo: "https://github.com/zsh-users/zsh-syntax-highlighting.git"
- name: "zsh-autosuggestions"
repo: "https://github.com/zsh-users/zsh-autosuggestions.git"