WSL を使う場合は Linux セットアップ の手順がそのまま流用できます。 ここではネイティブ Windows(PowerShell 7 + scoop)を前提とします。
リポジトリ配置規約: Linux/macOS の
~/repos/github.com/kqnade/dotfilesと概念的に揃え、Windows ではZ:\(開発ドライブ) を ghq root 相当としてZ:\github.com\kqnade\dotfilesを使います。.chezmoi.toml.tmplのsourceDirはこの規約に基づき OS で自動分岐します。
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
scoop install git chezmoiNew-Item -ItemType Directory -Force -Path Z:\github.com\kqnade | Out-Null
git clone https://github.com/kqnade/dotfiles.git Z:\github.com\kqnade\dotfiles
Set-Location Z:\github.com\kqnade\dotfileschezmoi init --source .
chezmoi applyrun_onchange_install-scoop-packages.ps1 が自動実行され、scoopfile.json の
buckets / apps が一括インストールされます(次回以降は manifest 変更時のみ再実行)。
CLI ツール群と言語ランタイムは scoop ではなく mise で precompiled バイナリとして取得します:
mise installdot_config/mise/config.toml.tmpl の Windows レンダリングは、source build が必要な lua / ruby を自動的に除外しています。
. $PROFILEWindows では
dot_zshrc,dot_config/zsh/,dot_config/sheldon/,dot_config/ghostty/は.chezmoiignoreで除外され、 PowerShell プロファイル (Documents/PowerShell/Microsoft.PowerShell_profile.ps1) が代わりに展開されます。
chezmoi apply は以下を自動セットアップします:
dot_bash_profile→~/.bash_profileに配置(ログインシェル時に~/.bashrcを読む)dot_bashrc.tmpl→~/.bashrcに配置(mise / starship / fzf 起動 + aliases 読込)run_onchange_setup-msys2.ps1.tmpl→ scoop 配下の MSYS2 のetc\nsswitch.confをdb_home: windowsに書き換え(admin 不要、scoop 管理下なのでユーザー所有)
つまり Windows 機の初回 chezmoi apply 後、手動セットアップは何もありません。
MSYS2 を起動すると:
echo $HOME # /c/Users/<user>
which mise # /c/Users/<user>/scoop/shims/mise
which starship # 同上補足: MSYS2 は複数のサブシステム(MSYS / UCRT64 / MINGW64 / CLANG64)を持ちますが、 日常開発には MSYS2 UCRT64 ショートカットからの起動を推奨します。