ohmyzsh
#######################################################################################################
:exclamation: УСТАРЕВАНИЕ :exclamation:
Этот репозиторий и связанная с ним роль устарели в пользу Manala Ansible Collection
Информацию о его использовании можно найти в репозитории коллекции
#######################################################################################################
Ansible Роль: Oh My Zsh
:exclamation: Сообщите о проблемах и отправьте Pull Requests в основной репозиторий Ansible Role :exclamation:
Эта роль настраивает Oh My Zsh.
Она является частью Manala Ansible stack, но может использоваться как самостоятельный компонент.
Требования
Нет.
Зависимости
Нет.
Установка
Ansible 2+
Используя ansible galaxy cli:
ansible-galaxy install manala.ohmyzsh
Используя файл требований ansible galaxy:
- src: manala.ohmyzsh
Обработчики ролей
Нет.
Переменные роли
Имя | По умолчанию | Тип | Описание |
---|---|---|---|
manala_ohmyzsh_dir |
'/usr/local/share/oh-my-zsh' | Строка | Каталог установки Oh My Zsh |
manala_ohmyzsh_users_defaults |
[] | Массив | Настройки по умолчанию для пользователей |
manala_ohmyzsh_users |
[] | Массив | Коллекция пользователей с индивидуальными настройками ohMyZsh. |
manala_ohmyzsh.update |
false | Булевый | Нужно ли автоматически получать новую версию ohMyZsh |
manala_ohmyzsh_custom_themes_exclusive |
false | Булевый | Исключение существующих индивидуальных тем |
manala_ohmyzsh_custom_themes_dir |
'/etc/supervisor/conf.d' | Строка | Путь к каталогу индивидуальных тем |
manala_ohmyzsh_custom_themes_defaults |
{} | Массив | Настройки по умолчанию для индивидуальных тем |
manala_ohmyzsh_custom_themes |
[] | Массив | Индивидуальные темы |
Конфигурация Oh My Zsh
Ключ manala_ohmyzsh_users_defaults
позволяет вам определять разные шаблоны конфигурации по умолчанию для пользователей.
manala_ohmyzsh_users_defaults:
template: my/.zshrc.j2
Ключ manala_ohmyzsh_dir
используется для указания пути, где находится oh-my-zsh.
manala_ohmyzsh_dir: /usr/local/share/oh-my-zsh
Конфигурация пользователя
Эта часть позволяет вам с помощью ключа manala_ohmyzsh_users
конфигурировать каждую учетную запись пользователя следующим образом:
Имя | По умолчанию | Тип | Описание |
---|---|---|---|
user |
~ (обязательно) | Строка | Имя учетной записи пользователя |
home |
'root' или '~' ~ item.user | Строка | Домашний каталог учетной записи пользователя |
template |
~ | Строка | Шаблон, используемый для конфигурации Oh My Zsh |
config |
~ | Массив/Строка | Список опций Oh My Zsh |
state |
'present' | Строка | Состояние |
manala_ohmyzsh_users:
# Шаблон (рекомендуется)
- user: root
template: users/manala/.zshrc.j2
config:
ZSH_THEME: default.prod
plugins: [git, debian, common-aliases, history, history-substring-search]
# Словарная конфигурация
- user: root
group: foo # По умолчанию по основной группе пользователя, но можно переопределить
config:
ZSH_THEME: default.prod
plugins: [git, debian, common-aliases, history, history-substring-search]
# Сырая конфигурация
- user: root
config: |
# Путь к вашей установке oh-my-zsh.
export ZSH=$HOME/.oh-my-zsh
# Параметры массивов словаря (устарело):
- user: root
config:
- ZSH_THEME: default.prod
- plugins: (git debian common-aliases history history-substring-search)
- user: bar
state: ignore # Запись будет игнорироваться
# Упрощенные пользователи
- "{{ my_custom_users_array }}"
Индивидуальные темы
manala_ohmyzsh_custom_themes_exclusive
позволяет вам очистить существующие индивидуальные темы в каталоге, определенном ключом manala_ohmyzsh_custom_themes_dir
. Это сделано, чтобы никакие старые или вручную созданные файлы не повлияли на текущую конфигурацию.
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%}%% "
# По шаблону (имя файла на основе шаблона)
- template: ohmyzsh/custom/template.zsh-theme.j2
# По шаблону (форсированное имя файла)
- file: bar.zsh-theme
template: ohmyzsh/custom/template.zsh-theme.j2
# Убедитесь, что конфигурация отсутствует
- file: absent.zsh-theme
state: absent # "present" по умолчанию
# Игнорировать конфигурацию
- file: ignore.zsh-theme
state: ignore
# Упрощенные темы
- "{{ my_custom_themes_array }}"
Примечание: для обеспечения обратной совместимости эта роль по умолчанию установит следующие шаблоны индивидуальных тем:
- custom/themes/default.dev.j2
- custom/themes/default.demo.j2
- custom/themes/default.staging.j2
- custom/themes/default.prod.j2
Флаги
Разрешить Oh My Zsh загружать новые версии из репозитория
manala_ohmyzsh:
update: true
# Также может быть установлено для всех ролей manala
manala:
update: true
Пример плейбука
- hosts: servers
roles:
- role: manala.ohmyzsh
Лицензия
MIT
Информация об авторе
Manala (http://www.manala.io/)
ansible-galaxy install manala/ansible-role-ohmyzsh