![screenshot](https://i.imgur.com/lRu6DFN.jpg "screenshot") *Background: [crowned > need for speed](https://www.crownedstore.com/need-for-speed), Fluent terminal with Bright Lights theme* # My Windows dev setup / howto ### Get the latest build of windows *For some dumb reason windows always installes an old version so i use the insider program to get the latest windows version* 1. Settings > Updates & Security > Windows Insider Program > do your things here 2. Settings > Updates & Security > Update Windows > Check for updates *(This will take a shitload of time)* ### Programs i always install - [Shutup 10](https://www.oo-software.com/en/shutup10) *disable windows garbage* - [git](https://git-scm.com/downloads) *ofc* - [chocolatey](https://chocolatey.org/) *a package manager for windows* - *Programming "languages"* - [nodejs](https://nodejs.org/en/) - [Go](https://golang.org/dl/) - [Rust](https://www.rust-lang.org/learn/get-started) - [vsCode](https://code.visualstudio.com/) *code editor* - [Windows Terminal](https://www.microsoft.com/en-us/p/windows-terminal-preview/9n0dx20hk701?activetab=pivot:overviewtab) or [Fluent Terminal *my favorite*](https://github.com/felixse/FluentTerminal) *a nice terminal* - [Wox & Everything](https://github.com/Wox-launcher/Wox/releases) *a quick launch tool & file indexer* - [Deskpins](https://efotinis.neocities.org/deskpins/) *Pin a window to the top* - [Winaero Tweaker](https://winaero.com/download.php?view.1796) *Tweak the windows experance* ### Turn on hyper-v *some programs require this or work better so i usually turn this on* Control Panel > Programs > Turn Windows features on or off > hyper-v ### Linux Subsystem As administrator run: *(to allow the windows subsystem)* ``` Enable-WindowsOptionalFeature -Online -FeatureName $("VirtualMachinePlatform", "Microsoft-Windows-Subsystem-Linux") wsl --set-default-version 2 ``` Install [Ubuntu 18.04 LTS](https://www.microsoft.com/nl-nl/p/ubuntu-1804-lts/9n9tngvndl3q?rtc=1&activetab=pivot:overviewtab) *After installing you might have to convert the subsystem to windows subsystem version 2 using:* ```sh wsl -l -v wsl --set-version Ubuntu 2 ``` To view localhost only exposed servers create `.wslconfig` in the user root dir with the following contents: ``` [wsl2] localhostForwarding=true ``` To quickly access the subsystem's filesystem add the following network drive under *"This PC"* `\\wsl$\Ubuntu` *note: this does not work on wsl1* ### Docker Download [Docker desktop](https://www.docker.com/products/docker-desktop) After install: 1. go to Docker desktop settings 3. Under command line enable: Enable experimental features 2. Under general enable: Enable the experimental WSL 2 based engine 3. [Install docker in the ubuntu subsystem](https://docs.docker.com/install/linux/docker-ce/ubuntu/) *there is no need to start the docker service* 4. In the docker desktop settings > Resources > WSL intergration > Enable ubuntu or whatever you have ### Fish, omf & nvm in the subsystem I use fish as my main shell on linux so i also install it on my subsystem ```sh # install fish v3 sudo add-apt-repository ppa:fish-shell/release-3 sudo apt install fish # set fish as main shell chsh -s `which fish` # install oh my fish curl -L https://get.oh-my.fish | fish # install nvm (node version manager) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash omf install nvm nvm install 13 nvm use 13 nvm alias default 13 # Get a nice fish theme if you want: omf install nai ``` I usually edit the `.config/omf/init.fish` to add a few handy shotcuts: ```fish alias h='cd ~' # ... ``` ## Theming & Custom settings ### Fish & vscode See my [dotfiles](https://github.com/mjarkk/dotfiles) #### Wox 1. Download: https://github.com/dracula/wox 2. Place `Dracula.xaml` in `%LOCALAPPDATA%\Wox\app-X.X.XXX\Themes`, in wox type `restart wox` > `settings` > Theme > Dracula ### Fluent terminal Download the `z-Bright-Lights.itermcolors` theme underhere and import it into the fluent terminal For more themes: https://iterm2colorschemes.com *(dowanlod the zip and extract the schemes folder)* Add Fluent terminal to context menu: [install.bat](https://github.com/felixse/FluentTerminal/blob/dec492e39a04bfb4f8bd4b8f4dfc513ec87bc796/Explorer%20Context%20Menu%20Integration/Install.bat) #### Steam 1. download [Steam customizer tool](http://steamcustomizer.com/download) 2. download [the dracula skin](http://editor.steamcustomizer.com/anqbr) ### Winaero Tweaked settings: - Disable timeline *context menu* - Take ownership *context menu* - Screen snip *context menu* - Screen snip *shortcuts* > place the shotcut in `%appdata%\Microsoft\Windows\Start Menu\Programs` - Disable cortana *windows apps* - Ads and unwanted software *behavior* - Compressed overlay icon *file explorer* - Shortcut arrow *shortcuts* > No ### AMD Radeon settings *The radeon software has a list of hotkeys that are also in use by some programs so i unbind them usually*, Settings arrow *right top* > Hotkeys > *unbind the keys you find annoying for me that's almost everything :)* ### Windows UI *I do most things via the wox so i don't need the taskbar anymore, it's just a waste of space* ![screenshot](https://i.imgur.com/zOxSn4c.png "screenshot") ## Problems - This setup eats noticable more memory than working on my linux machine, around 3-5gb more ram usage. - Sometimes after login the localhost forwarding in wsl doesn't work and the only solution to fix it seems to be restarting my pc - Restarting wsl *(`wsl --shutdown` > open a terminal)* breaks the docker access from within wsl, the docker command still work but starting a webserver and trying access it doesn't work. Usually i restart my pc if i still need to use docker after this, but i suspect you can also figgle around with the docker desktop settings to get it working again. - Sometimes the subsystem or the fish shell seems to crach but kinda still works???, it's supper wired but in the end i always restart my pc to solve it *(note: Always when this happends there is also an update that can be installed when rebooting)*. ## Notes for myself - Windows start menu dir: `%appdata%\Microsoft\Windows\Start Menu\Programs`