manala.ohmyzsh
#######################################################################################################
:exclamation: 弃用通知 :exclamation:
此仓库及相关角色已弃用,建议使用 Manala Ansible Collection
您可以在 集合仓库 中找到使用信息
#######################################################################################################
Ansible 角色:Oh My Zsh 
:exclamation: 在主 Ansible 角色仓库 中报告问题 和 发送拉取请求 :exclamation:
该角色用于设置 Oh My Zsh。
它是 Manala Ansible 栈 的一部分,但可以作为独立组件使用。
需求
无。
依赖项
无。
安装
Ansible 2+
使用 ansible galaxy 命令行工具:
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 |
[] | 数组 | 自定义配置的用户集合 |
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/)