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/)

关于项目

Handle oh-my-zsh

安装
ansible-galaxy install manala.ohmyzsh
许可证
Unknown
下载
57.3k
拥有者
Manala is an open source project supported by the french web agency ELAO providing advanced ansible roles for website's infrastructures and far more.