Developer Setup for Windows 11
Contents
Here’s how I set up my most recent fresh Windows install on my Thinkpad, for use as a development machine.
In BIOS
- Enable virtualization
- Disable fingerprint reader
- Switch fn / ctrl, and enable primary function for fn keys (so pressing F2 yields F2)
During Windows 11 Pro Install
- Follow the partitioning guide from [[drive-partitioning-for-dual-booting]]
- Follow the username guide from [[installing-windows-with-custom-user-folder-name]]
- Disable all location settings
Basic configuration
- Wifi driver won’t work, so connect via ethernet
- Go to Windows update and apply all updates. Windows will reboot a few times
- Go to Windows update -> advanced options, and check “Notify me when a restart is required”
- Go to Desktop, right click -> display settings -> scale -> 100%
- Right click on taskbar -> taskbar settings
- Disable all the excess icons
- Taskbar behaviors -> alignment -> left
- Unpin MSFT store
- Unpin Edge
- Login to windows now (since internet will actually work)
- Windows key -> “Date and time settings” -> change timezone
- Windows key -> “Developer settings”
- Developer mode on
- Apply all file explorer settings
- Maybe apply remote desktop settings
- Apply powershell settings
- Hit the Windows key, then right click on various junk apps and remove them
- Windows key -> “Add or remove programs” -> uninstall junk
- Spotify
- Disney+
- Mail and Calendar
- OneDrive
- etc
Applications install
- Install Microsoft office
- Install Chocolatey
- Install Chrome, and then change all default apps to use Chrome instead of Edge
WSL setup
- Open Windows Terminal ->
wsl --install -d Ubuntu
- Reboot
- Set unixname to be the same as your Windows username (which should be of your choosing, e.g.
vasuagrawal
, thanks to previous instructions) - Set password to whatever
Terminal
TODO: Install my powershell profile
Git configuration
|
|
Take 2
- Install Ubuntu 22.04 LTS
- Update the scrollback size in the advanced settings to something other than 0. 0 does not in fact mean unlimited, and instead seems to just disable scrollback entirely.