- https://github.com/felixrieseberg/windows-development-environment
- https://char.gd/blog/2017/how-to-set-up-the-perfect-modern-dev-environment-on-windows for front-end specific tips
- Install Windows with offline profile (no MSFT account) so that user folder is set correctly (rather than to a truncated email address)
- Make sure BitLocker is enabled
- Change name of computer (to something memorable, instead of DESKTOP-FDSFFE or some other random name)
- Sign in to MSFT account to get OneDrive syncing
Install and run Boxstarter with personalized script Boxstarter script
Included in Boxstarter script.
- Let OneDrive sync itself
- Restore other use folders from File History backups
- Enable Development mode in Windows settings and enable script execution
- Install Windows Terminal
- Install chocolatey (in Powershell):
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
- Boxstarter and PatchMyPC will handle installation of most programs (development and otherwise)
- Enable WSL and Hyper-V
- Control Panel > Add/ Remove Windows Features > Windows Subsystem for Linux & Hyper-V
- Reboot
- Install Ubuntu from Windows Store
- Symlink files from
OneDrive/Development/dotfiles
(working directory: ~)- Elevated PS prompt:
New-Item -Type SymbolicLink -Name <linkName> -Target ./OneDrive/Development/dotfiles/<target>
- Elevated PS prompt:
- Install desired global npm modules (
npm install -g
)- Make sure Node has its environment set up properly: https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#compiling-native-addon-modules
- Boxstarter script may handle this automatically or it may be necessary to instal windows-build-tools. Haven't tried it out yet.
- From elevated PS:
npm install --global --production windows-build-tools
- Look at
npm-global.txt
inOneDrive/Development
- Make sure Node has its environment set up properly: https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md#compiling-native-addon-modules
- Sync VS Code settings from gist using nonoroazoro.syncing extension
- Install development fonts (choose 1+)
- Fira Code, for fancy ligatures
- Cascadia Code and Cascadia Code PL
- WSL changes
- Install ZSH:
sudo apt-get update && sudo apt-get install zsh
- Install important development packages:
sudo apt-get install git build-essential
- Install Prezto and Pure theme for Prezto
- Use own fork of Prezto as master and pull changes from upstream
- Install ZSH:
- Non-development apps
- Anki
- OEM apps (Dell Update, Intel Driver Update, etc.)
- Backblaze
- Inherit backup state from old installation
- MS Store apps
- Microsoft Todo
- Microsoft Office
- Spotify
- Paint.NET
- Facebook, Twitter, FB Messenger, WhatsApp Desktop
- Misc
- Setup accounts
- Sign in to email accounts in Mail;
- 1Password
- Spotify
- Edge extensions
- uBlock Origin
- 1Password
- To get VirtualBox and Hyper-V to cooperate, need to create separate BCD entries for Hyper-V on and off.
- In elevated PS:
bcdedit /copy '{current}' /d "No Hyper-V"
,bcdedit /set '{<new entry UUID>}' hypervisorlaunchtype off