chezmoiを使って、WindowsのWSL環境でのみ有効になる設定を定義しました。
chezmoiは設定ファイル群 (dotfiles)を管理するためのユーティリティーツールです。chezmoiのテンプレート機能を使うと、環境ごとに異なる設定を定義できます。
テンプレートの作成
設定ファイルをテンプレートとしてchezmoiの管理対象に追加する場合は以下のコマンドを実行します。
chezmoi add --template ~/.zshrc
設定ファイルがすでにchezmoiの管理対象になっている場合は以下のコマンドでテンプレートに変更します。
chezmoi chattr +template ~/.zshrc
WSL環境の判定
WSL環境のみ有効な設定を定義するには、次のように記述します。
{{ if eq .chezmoi.os "linux" }} {{ if (.chezmoi.kernel.osrelease | lower | contains "microsoft") }} # WSL-specific code {{ end }} {{ end }}
.gitconfigの設定
WSL2環境のGitのみ、GitHubへの認証にGit for WindowsのGit Credential Managerを利用するため、.gitconfig
のテンプレートであるdot_gitconfig.tmpl
を次のように設定しました。
{{ if eq .chezmoi.os "linux" }} {{ if (.chezmoi.kernel.osrelease | lower | contains "microsoft") }} [credential] helper = /mnt/c/Program\\ Files/Git/mingw64/bin/git-credential-manager.exe {{ end }} {{ end }}