Open12

Windowsセットアップメモ

masincmasinc

winget

Microsoft純正のパッケージマネージャー

主要なパッケージは大分そろってきたので Chocolatey や Scoop は補助的な利用で良さそう。

https://docs.microsoft.com/ja-jp/windows/package-manager/winget/#production-recommended
https://www.microsoft.com/ja-jp/p/app-installer/9nblggh4nns1?activetab=pivot:overviewtab

winget install コマンドは確認ダイアログが出ないでいきなりインストーラーを起動するので怖い。
他のパッケージマネージャーの -y オプションを付与しているつもりで実行して、まずは winget show で確認するのがよさそう。

https://github.com/microsoft/winget-pkgs

ソース(リポジトリ) は wingetmsstore がある。
msstoreは Microsoft Storeから。wingetは 以下のリポジトリに登録してある模様。

私は以下のように利用していることが多い。

  • winget はインストーラー版のサイレントインストール
  • scoop はポータブルパッケージやシングルバイナリのインストール

WingetUI

winget や scoop のパッケージをGUIで管理。アップデート通知がうれしい。
インストールやアップデートに失敗することもあるのでそういったときはCLIで実行

https://github.com/martinet101/WingetUI

masincmasinc

PowerShell

標準(Windows10まで)の PowerShell は 古いのでパッケージからインストール
Windows11は要調査

https://github.com/PowerShell/PowerShell/

winget show Microsoft.PowerShell
winget install Microsoft.PowerShell 
masincmasinc

vscode

winget show Microsoft.VisualStudioCode
winget install Microsoft.VisualStudioCode
masincmasinc

wsl

対応バージョンであれば以下のコマンドのみでインストール完了。とてつもなく簡単!

wsl --install

https://docs.microsoft.com/ja-jp/windows/wsl/install
https://docs.microsoft.com/ja-jp/windows-server/virtualization/hyper-v/system-requirements-for-hyper-v-on-windows

標準のディストリビューションはリセットが簡単にできるので、常用するディストリビューションには別名を付けるのがよさそう。

個人的WSLバージョン使い分け

  • WSL1: Windowsのファイルシステム触る時
    • シェル等
  • WSL2: それ以外

Systemdが使えたり、標準で対応していないディストリビューションをインストールすることができるツール『Distrod』

https://github.com/nullpo-head/wsl-distrod

masincmasinc

Python

Windows Store版と python.org 版がある。
wingetで複数バージョンを管理する場合は msstore 版でインストールすることができる。

python.org でダウンロードしたものを利用する場合は、『アプリと機能』→『アプリ実行エイリアス』から python.exepython3.exeの アプリインストーラーを無効化しないとパスが通らない。

https://www.python.org/

masincmasinc

Windows設定

パスの最大文字数を増やす

デフォルトではパス文字列長は最大260字のため、まれによく引っかかる。以下のページに沿うことで制限解除可能
https://docs.microsoft.com/ja-jp/windows/win32/fileio/maximum-file-path-limitation?tabs=cmd

Professional以上では 『グループポリシー』 > 『コンピュータの構成』 > 『管理用テンプレート』 > 『システム 』> 『ファイルシステム』 > 『Win32の長いパスを有効にする』を有効にすることでも可能

管理者以外でシンボリックリンクを作成

Windowsではユーザーではデフォルトではシンボリックリンクを作成することができないため、管理者の昇格する必要がある。

Windowsでユーザーが作成できないのはシンボリックリンク攻撃対策の模様

https://docs.microsoft.com/ja-jp/windows/security/threat-protection/security-policy-settings/create-symbolic-links

Professional以上で『グループポリシー』 > 『コンピュータの構成』 > 『Windowsの設定』>『セキュリティの設定』 > 『ローカルポリシー』 > 『ユーザー権利の割り当て』> 『シンボリックリンクの作成』 のダイアログから許可したいいユーザー/グループを追加することでユーザー権限で作成できるようになる。

masincmasinc

Git関連

アプリケーション winget ID
Git Git.Git
GitHub CLI GiHub.cli
-GitHub Desktop- -GitHub.GitHubDesktop-
アプリケーション scoop ID
git git
ghq ghq