manala.ohmyzsh
#######################################################################################################
:exclamation: DESACTIVACIÓN :exclamation:
Este repositorio y el rol asociado están desactivados a favor de la Colección de Ansible Manala
Encontrarás información sobre su uso en el repositorio de la colección
#######################################################################################################
Rol de Ansible: Oh My Zsh 
:exclamation: Reporta problemas y envía Pull Requests en el repositorio principal de Roles de Ansible :exclamation:
Este rol se encargará de la instalación de Oh My Zsh.
Es parte de la pila de Ansible Manala pero se puede usar como un componente independiente.
Requisitos
Ninguno.
Dependencias
Ninguna.
Instalación
Ansible 2+
Usando el CLI de ansible galaxy:
ansible-galaxy install manala.ohmyzsh
Usando un archivo de requisitos de ansible galaxy:
- src: manala.ohmyzsh
Controladores del Rol
Ninguno
Variables del Rol
Nombre | Predeterminado | Tipo | Descripción |
---|---|---|---|
manala_ohmyzsh_dir |
'/usr/local/share/oh-my-zsh' | Cadena | Directorio de instalación de Oh My Zsh |
manala_ohmyzsh_users_defaults |
[] | Array | Configuración predeterminada de los usuarios |
manala_ohmyzsh_users |
[] | Array | Colección de usuarios con configuraciones personalizadas de ohMyZsh. |
manala_ohmyzsh.update |
false | Booleano | Si debemos recuperar automáticamente nuevas versiones de ohMyZsh |
manala_ohmyzsh_custom_themes_exclusive |
false | Booleano | Exclusión de temas personalizados existentes |
manala_ohmyzsh_custom_themes_dir |
'/etc/supervisor/conf.d' | Cadena | Ruta del directorio de temas personalizados |
manala_ohmyzsh_custom_themes_defaults |
{} | Array | Valores predeterminados de los temas personalizados |
manala_ohmyzsh_custom_themes |
[] | Array | Temas personalizados |
Configuración de Oh My Zsh
La clave manala_ohmyzsh_users_defaults
te permitirá definir diferentes plantillas de configuración predeterminadas para los usuarios.
manala_ohmyzsh_users_defaults:
template: my/.zshrc.j2
La clave manala_ohmyzsh_dir
se usa para especificar la ruta donde se instalará oh-my-zsh.
manala_ohmyzsh_dir: /usr/local/share/oh-my-zsh
Configuración de Usuario
Esta parte te permite, con la clave manala_ohmyzsh_users
, configurar cada cuenta de usuario de la siguiente manera:
Nombre | Predeterminado | Tipo | Descripción |
---|---|---|---|
user |
~ (requerido) | Cadena | Nombre de la cuenta de usuario |
home |
'root' o '~' ~ item.user | Cadena | Directorio principal de la cuenta de usuario |
template |
~ | Cadena | Plantilla utilizada para la configuración de Oh My Zsh |
config |
~ | Array/Cadena | Lista de opciones de Oh My Zsh |
state |
'present' | Cadena | Estado |
manala_ohmyzsh_users:
# Plantilla (recomendado)
- user: root
template: users/manala/.zshrc.j2
config:
ZSH_THEME: default.prod
plugins: [git, debian, common-aliases, history, history-substring-search]
# Configuración tipo diccionario
- user: root
group: foo # Por defecto toma el grupo principal del usuario, pero puede ser sobreescrito
config:
ZSH_THEME: default.prod
plugins: [git, debian, common-aliases, history, history-substring-search]
# Configuración en crudo
- user: root
config: |
# Ruta a tu instalación de oh-my-zsh.
export ZSH=$HOME/.oh-my-zsh
# Parámetros de array en diccionario (desaprobado):
- user: root
config:
- ZSH_THEME: default.prod
- plugins: (git debian common-aliases history history-substring-search)
- user: bar
state: ignore # La entrada será ignorada
# Usuarios aplanados
- "{{ my_custom_users_array }}"
Temas Personalizados
manala_ohmyzsh_custom_themes_exclusive
te permite limpiar los temas personalizados existentes en el directorio definido por la clave manala_ohmyzsh_custom_themes_dir
. Esto asegura que ningún archivo viejo o creado manualmente alterará la configuración actual.
manala_ohmyzsh_custom_themes_exclusive: true
manala_ohmyzsh_custom_themes:
- file: foo.zsh-theme
config: |
PROMPT="%{$fg[red]%}%n%{$reset_color%}@%{$fg[blue]%}%m %{$fg[yellow]%}%~ %{$reset_color%}%% "
# Basado en plantilla (nombre de archivo basado en la plantilla)
- template: ohmyzsh/custom/template.zsh-theme.j2
# Basado en plantilla (forzar nombre de archivo)
- file: bar.zsh-theme
template: ohmyzsh/custom/template.zsh-theme.j2
# Asegurar que la configuración esté ausente
- file: absent.zsh-theme
state: absent # "present" por defecto
# Ignorar configuración
- file: ignore.zsh-theme
state: ignore
# Temas aplanados
- "{{ my_custom_themes_array }}"
Nota: para asegurar la compatibilidad hacia atrás, este rol instalará estos temas personalizados por defecto:
- custom/themes/default.dev.j2
- custom/themes/default.demo.j2
- custom/themes/default.staging.j2
- custom/themes/default.prod.j2
Indicadores
Permitir que Oh My Zsh obtenga nuevas revisiones del repositorio
manala_ohmyzsh:
update: true
# También se puede establecer a través de los roles manala
manala:
update: true
Ejemplo de playbook
- hosts: servers
roles:
- role: manala.ohmyzsh
Licencia
MIT
Información del autor
Manala (http://www.manala.io/)
ansible-galaxy install manala.ohmyzsh