Windowsで開発環境を構築する 2025
概要
ひさびさにwindowsを触る機会があったので
windows+mise+WSL2+VSCodeの開発環境を作ってみます
2025/02時点での動作確認環境
- Windows 11 Home 23H2
パッケージマネージャ
以下が選択候補ですが、MS公式のwingetを使ってみます
(特にインストールは不要でした)
- winget
- scoop
- chocolatey
Ansibleとかで自動化したい場合はscoopの方がよさそうです
ターミナル
windowsのターミナルには以下2つあり、MS製のシェルであるPowerShellを使ってみます
標準では5系が入っているので最新版を入れます
- コマンドプロンプト
- Windows PowerShell
ターミナル(PowerShell 5)→wingetでインストール
winget install Microsoft.PowerShell
※以降PowerShell7を使います
バージョン管理ツール
(後述のWSL2上でなく)windowsで言語やツールのバージョンを管理する
miseを入れます
winget install jdx.mise
PowerShell7でプロファイルを作成します
if (!(Test-Path -Path $PROFILE)) {
New-Item -ItemType File -Path $PROFILE -Force
}
notepadなどで開いて
notepad $PROFILE
設定を追記します
$shimPath = "$env:USERPROFILE\AppData\Local\mise\shims"
$currentPath = [Environment]::GetEnvironmentVariable('Path', 'User')
$newPath = $currentPath + ";" + $shimPath
[Environment]::SetEnvironmentVariable('Path', $newPath, 'User')
mise
利用可能ツールの確認
mise plugins ls-remote
ツール指定だとリストにないものでもバージョン出てきたりします
mise ls-remote rust
rustの最新版をglobalにインストール
mise use -g rust@latest
ローカルにバージョン指定で入れる場合
mise use rust@1.80
インストール済を確認
mise ls
設定されているバージョンの確認
mise current
Linux環境
よく使われるのは以下の2つでしょうか
今回はWSL2を使ってみます
- WSL2(Windows Subsystem for Linux)
- Cygwin
Cygwinは今となってはあまり使われなくなってきている気もしますが、外側のネットワークにアクセスしたい場合などに利用されることがあるようです
WSL2(Windows Subsystem for Linux)
PowerShellもしくはコマンドプロンプトを管理者モードで起動してインストール
wsl --install
Ubuntu 24.04.1 LTSがインストールされました
スタートメニューには「Ubuntu」という名前で(なぜか2つ)登録されていました。謎です
ターミナルからも選択できます
mise
WSL2でもバージョン管理したいので
こちらもドキュメントにしたがってインストールします
sudo apt update -y && sudo apt install -y gpg sudo wget curl
sudo install -dm 755 /etc/apt/keyrings
wget -qO - https://mise.jdx.dev/gpg-key.pub | gpg --dearmor | sudo tee /etc/apt/keyrings/mise-archive-keyring.gpg 1> /dev/null
echo "deb [signed-by=/etc/apt/keyrings/mise-archive-keyring.gpg arch=amd64] https://mise.jdx.dev/deb stable main" | sudo tee /etc/apt/sources.list.d/mise.list
sudo apt update
sudo apt install -y mise
miseのアクティベート
echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc
ちなみにMacで使う場合などはnon-interactive sessions用の設定もしておくとよいです
IDE等で設定が読まれるようになります
echo 'eval "$(mise activate bash --shims)"' >> ~/.bash_profile
エディタ/IDE
Pulsar
zedを入れようと思ったけどバイナリがまだないのでPulsar(Atom後継)を入れます
winget install Pulsar-Edit.Pulsar
パッケージとかは適当に入れました
↓参考
VSCode
インストール
winget install Microsoft.VisualStudioCode
WSL用のパッケージを入れます
拡張機能->「Remote Development」を検索
以下でWSLのフォルダが開けます
- VSCodeからCtrl+Shift+Pで「WSLでフォルダーを開く」
- Ubuntuのディレクトリで
code .
Discussion