Windowsセットアップメモ
winget
Microsoft純正のパッケージマネージャー
主要なパッケージは大分そろってきたので Chocolatey や Scoop は補助的な利用で良さそう。
winget install
コマンドは確認ダイアログが出ないでいきなりインストーラーを起動するので怖い。
他のパッケージマネージャーの -y
オプションを付与しているつもりで実行して、まずは winget show
で確認するのがよさそう。
ソース(リポジトリ) は winget
と msstore
がある。
msstoreは Microsoft Storeから。wingetは 以下のリポジトリに登録してある模様。
私は以下のように利用していることが多い。
-
winget
はインストーラー版のサイレントインストール -
scoop
はポータブルパッケージやシングルバイナリのインストール
WingetUI
winget や scoop のパッケージをGUIで管理。アップデート通知がうれしい。
インストールやアップデートに失敗することもあるのでそういったときはCLIで実行
Windows Terminal
Microsoft純正のターミナル
winget show Microsoft.WindowsTerminal
winget install Microsoft.WindowsTerminal
テーマは以下のサイトで探して settings.json に入れることで追加が可能。色コードを設定するだけなのでカスタマイズも簡単。
PowerShell
標準(Windows10まで)の PowerShell は 古いのでパッケージからインストール
Windows11は要調査
winget show Microsoft.PowerShell
winget install Microsoft.PowerShell
デフォルトではps1ファイルの実行やプロファイルの読み込みもできないので実行ポリシーを Remote Signed
くらいにはしたい。
vscode
winget show Microsoft.VisualStudioCode
winget install Microsoft.VisualStudioCode
wsl
対応バージョンであれば以下のコマンドのみでインストール完了。とてつもなく簡単!
wsl --install
標準のディストリビューションはリセットが簡単にできるので、常用するディストリビューションには別名を付けるのがよさそう。
個人的WSLバージョン使い分け
- WSL1: Windowsのファイルシステム触る時
- シェル等
- WSL2: それ以外
Systemdが使えたり、標準で対応していないディストリビューションをインストールすることができるツール『Distrod』
Python
Windows Store版と python.org 版がある。
wingetで複数バージョンを管理する場合は msstore
版でインストールすることができる。
python.org でダウンロードしたものを利用する場合は、『アプリと機能』→『アプリ実行エイリアス』から python.exe
と python3.exe
の アプリインストーラーを無効化しないとパスが通らない。
バージョン管理をするなら Windows Store版か以下が良さそう
Node.js
wingetでは以下のパッケージが存在する。
winget show OpenJS.NodeJS.LTS
winget show OpenJS.NodeJS
winget show OpenJS.NodeJS.Nightly
私はLTS版を使っている。
バージョン管理する場合はnvm-windowsが良さそう?
nvs というバージョン管理ツールもWindowsに対応している模様
Windows設定
パスの最大文字数を増やす
デフォルトではパス文字列長は最大260字のため、まれによく引っかかる。以下のページに沿うことで制限解除可能
Professional以上では 『グループポリシー』 > 『コンピュータの構成』 > 『管理用テンプレート』 > 『システム 』> 『ファイルシステム』 > 『Win32の長いパスを有効にする』を有効にすることでも可能
管理者以外でシンボリックリンクを作成
Windowsではユーザーではデフォルトではシンボリックリンクを作成することができないため、管理者の昇格する必要がある。
Windowsでユーザーが作成できないのはシンボリックリンク攻撃対策の模様
Professional以上で『グループポリシー』 > 『コンピュータの構成』 > 『Windowsの設定』>『セキュリティの設定』 > 『ローカルポリシー』 > 『ユーザー権利の割り当て』> 『シンボリックリンクの作成』 のダイアログから許可したいいユーザー/グループを追加することでユーザー権限で作成できるようになる。
Git関連
アプリケーション | winget ID |
---|---|
Git | Git.Git |
GitHub CLI | GiHub.cli |
-GitHub Desktop- | -GitHub.GitHubDesktop- |
アプリケーション | scoop ID |
---|---|
git | git |
ghq | ghq |