--- # 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"