manala.ohmyzsh
#######################################################################################################
:exclamation: 非推奨 :exclamation:
このリポジトリと関連する役割は、Manala Ansible Collection に移行するために非推奨となりました。
使用方法についての情報は、コレクションリポジトリを参照してください。
#######################################################################################################
Ansible Role: Oh My Zsh 
:exclamation: 問題を報告し、プルリクエストを送信してください。主要なAnsible Roleリポジトリで :exclamation:
この役割は、Oh My Zshのセットアップを扱います。
これはManala Ansibleスタックの一部ですが、単独のコンポーネントとして使用することもできます。
要件
特にありません。
依存関係
特にありません。
インストール
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 |
[] | 配列 | Oh My Zshのカスタム設定を持つユーザーのコレクション |
manala_ohmyzsh.update |
false | ブール値 | Oh My Zshの新しいリビジョンを自動的に取り込むかどうか |
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.ohmyzsh