25H2リリース済みだがタスクバー上配置のために24H2をインストールした。
Windowsの用意
UUP dump経由でISOを用意してRufusを使ってローカルアカウントでインストールできるインストールメディアを作りインストール。
初期設定
- Ctrl+Shift+ESC => スタートアップ アプリ => 不要なものを無効化
- 設定 => システム => 電源とバッテリー => 電源モードやスリープ時間の調整
services.msc
- SysMain: 無効
gpedit.msc
- コンピュータの構成
- 管理用テンプレート
- システム
- シャットダウン
- 高速スタートアップの使用を要求する (無効)
- シャットダウン
- Windows Update
- Windows Update から提供される更新プログラムの管理
- プレビュー ビルドや機能更新プログラムをいつ受信するかを選択してください (有効, 180)
- 品質更新プログラムをいつ受信するかを選択してください (有効, 14)
- 従来のポリシー
- ダイアログ ボックスの規定のオプションを [更新をインストールしてシャットダウン] に調整しない (有効)
- Windows Update から提供される更新プログラムの管理
- システム
- 管理用テンプレート
フォント
アプリケーション類のインストールと設定
WinGet
winget install microsoft.dotnet.runtime.8 microsoft.powershell microsoft.powertoys microsoft.sysinternals.ctrl2cap microsoft.vcredist.2015+.x64 microsoft.visualstudiocode microsoft.windowsterminal microsoft.wsl winget install discord.discord dropbox.dropbox google.chrome google.japaneseime mozilla.firefox.ja tailscale.tailscale winget install electronicarts.eadesktop epicgames.epicgameslauncher gog.galaxy ubisoft.connect valve.steam
Scoop
scoop install git
scoop bucket add extras
scoop install aria2 dadroitjsonviewer delta fastcopy fastfetch fzf gh ghq keepassxc keypirinha ln lsd neovim nircmd nodejs notepadplusplus pnpm python rapidee ripgrep sfsu sftpgo starship uutils-coreutils wget winmerge winscp xh zenhan zoxide
scoop checkup # 開発者モードや長いパス、sudoをオンにする
パッケージマネージャ管理外
Windhawk
- Disable Taskbar Thumbnails
- Taskbar Clock Customization
- Taskbar Labels for Windows 11
- Taskbar on Top for Windows 11
その他
ssh-keygen -t ed25519してGitHubに登録する- Rapid Environment Editorで
C:\ebith\binを$PATHに追加する
sudo ctrl2cap /install sudo Add-MpPreference -ExclusionPath "$env:USERPROFILE\scoop" sudo Add-MpPreference -ExclusionPath "$env:USERPROFILE\ghq" ln -s "$env:USERPROFILE\Dropbox\dotfiles\bin" "C:\ebith\bin" ln -s "$env:USERPROFILE\Dropbox\dotfiles\dyna\dyna.ini.laptop" "C:\ebith\app\dyna\dyna.ini" mkdir "$env:APPDATA\keyhac" && ln -s "$env:USERPROFILE\Dropbox\dotfiles\keyhac\config.py" "$env:appdata\keyhac\config.py" ln -s "$env:USERPROFILE\Dropbox\dotfiles\.ssh\config" "$env:USERPROFILE\.ssh\config" ln -s "$env:USERPROFILE\Dropbox\dotfiles\nvim" "$env:LOCALAPPDATA\nvim" && nvim -c PlugInstall ln -s "$env:USERPROFILE\Dropbox\dotfiles\powershell\profile.ps1" "$env:USERPROFILE\Documents\PowerShell\profile.ps1" rm "$env:LOCALAPPDATA\Packages\Microsoft.windowsterminal_8wekyb3d8bbwe\LocalState\settings.json" && ln -s "$env:USERPROFILE\Dropbox\dotfiles\windowsTerminal\settings.json" "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json" ln -s "$env:USERPROFILE\Dropbox\dotfiles\wsl\.wslconfig" "$env:USERPROFILE\.wslconfig" mkdir "$env:APPDATA\Mozilla\Firefox\Profiles\kpz7lfh7.default-release\chrome" ln -s "$env:USERPROFILE\Dropbox\dotfiles\firefox\chrome\userChrome.css" "$env:APPDATA\Mozilla\Firefox\Profiles\kpz7lfh7.default-release\chrome\userChrome.css" ln -s "$env:USERPROFILE\Dropbox\dotfiles\firefox\chrome\userContent.css.laptop" "$env:APPDATA\Mozilla\Firefox\Profiles\kpz7lfh7.default-release\chrome\userContent.css" ln -s "$env:USERPROFILE\Dropbox\dotfiles\firefox\tridactyl" "$env:USERPROFILE\.config\tridactyl" ln -s "$env:USERPROFILE\Dropbox\dotfiles\keypirinha\portable\profile\user\apps.ini" "$env:USERPROFILE\scoop\persist\keypirinha\portable\profile\user\apps.ini" ln -s "$env:USERPROFILE\Dropbox\dotfiles\keypirinha\portable\profile\user\filescatalog.ini" "$env:USERPROFILE\scoop\persist\keypirinha\portable\profile\user\filescatalog.ini" ln -s "$env:USERPROFILE\Dropbox\dotfiles\keypirinha\portable\profile\user\keypirinha.ini" "$env:USERPROFILE\scoop\persist\keypirinha\portable\profile\user\keypirinha.ini" ln -s "$env:USERPROFILE\Dropbox\dotfiles\keypirinha\portable\profile\user\packagecontrol.ini" "$env:USERPROFILE\scoop\persist\keypirinha\portable\profile\user\packagecontrol.ini" ln -s "$env:USERPROFILE\Dropbox\dotfiles\keypirinha\portable\profile\installedpackages" "$env:USERPROFILE\scoop\persist\keypirinha\portable\profile\installedpackages" ghq get ebith/dotfiles ln -s "$env:USERPROFILE\ghq\github.com\ebith\dotfiles\.config\starship.toml" "$env:USERPROFILE\.config\starship.toml" ln -s "$env:USERPROFILE\ghq\github.com\ebith\dotfiles\.gitconfig" "$env:USERPROFILE\.gitconfig"
Arch Linux on WSL
wsl --install archlinuxすると再起動を求められたが再起動後もう一度実行したら問題なくインストールされた。
pacman -Syu pacman -S bat fd fish fzf ghq git git-delta github-cli less lsd openssh python ripgrep starship tmux vi vim wget xh zoxide # ユーザebithを作りそっちに移る passwd useradd -m ebith passwd ebith usermod -aG wheel ebith echo "%wheel ALL=(ALL:ALL) ALL" | sudo tee /etc/sudoers.d/wheel echo "Defaults timestamp_timeout=30" | sudo tee /etc/sudoers.d/timeout echo -e "[user]\ndefault=ebith" | sudo tee -a /etc/wsl.conf su ebith # 設定類 ghq get ebith/dotfiles cd $(ghq list --full-path --exact ebith/dotfiles) ./create_link.py .config .gitconfig .tmux.conf .vim mkdir -p ~/.vimlocal/{backup,swap,undo} chsh -s /usr/bin/fish exec -l fish fisher update rm ~/.bash_* # ホストと鍵を共有しちゃう cp -r /mnt/c/Users/ebith/.ssh ~/ chmod 644 ~/.ssh/config ~/.ssh/id_ed25519.pub chmod 600 ~/.ssh/id_ed25519 # ロケール echo "ja_JP.UTF-8 UTF-8" | sudo tee -a /etc/locale.gen sudo locale-gen sudo localectl set-locale LANG=ja_JP.UTF-8 # [Morganamilo/paru: Feature packed AUR helper](https://github.com/Morganamilo/paru) pacman -S --needed base-devel ghq get https://aur.archlinux.org/paru.git cd $(ghq list --full-path --exact aur.archlinux.org/paru) makepkg -si
トラブル
/etc/wsl.confを変更してデフォルトユーザをroot以外にするとwsl: Failed to start the systemd user session for 'trgv'. See journalctl for more details. · Issue #13186 · microsoft/WSLを吐くようになるっぽいのでとりあえずの対処としてdefault=rootにして後述のようにrootログインすると自動でebithに変更するようにした。
echo "cd $(echo ~ebith) && su ebith" | sudo tee /root/.profile
雑感
Windows 11で組み込みになったWinGetが便利だった。
Scoopでの管理が難しいポータブルじゃないソフトウェアも手動でインストールする必要が無くなって楽ちん。
念の為バックアップも取っていたが設定ファイル類は概ねDropboxへ逃がしていたためほぼ必要なかった。
すべて終わってからunattend.xmlの存在を思い出したので次の機会にはGenerate autounattend.xml files for Windows 10/11の手を借りてWindowsの初期セットアップを自動化してみても良いかもしれない。
15年以上はタスクバーを上で統一しているので今更Windowsだけ下にするというのもつらく、ここをどうにかできるかどうかが心配だったが24H2であればWindhawkでなんとかなった。
ウィンドウのスナップやWindows スポットライトみたいな設定(ms-settings)から変更するものは随時変更していったので記録していない。
Windows 11は今のところ思ってたより悪くないというか不満はあるけど進化もしてるしやっていけそうだなって感じ。