Background: crowned > need for speed, Fluent terminal with Bright Lights theme
Ya windows the worst os to program on or is it.
For a long time i've been fully againced windows and i still kinda agree if you use it without "cheating". Windows it just too unstable and too un-standardized to work with on it's own, it's like using mac os with it's forever taking updates but combined with non-standardized tooling and a lot of unexpected bahavior what just results in a lot of frustration.
For example why can i see ls taking time to display lines in powershell???, ya it's only ~50ms but still why does a simple command like ls has to take so long??
Or why sometimes do programs not stop running when i press ctrl+c and do i need to open task manager and scroll to the program because there is no search bar so i can find it quickly??
Well these are just a few things that make using windows not great and there are a lot more little things. Thankfully windows has evolved and now we can "cheat" around the biggest frustrations using the windows subsystem version 2, v1 still had a lot of windows problems but now with version 2 being in it's own vm it works amazing.
I call it cheating because in the end it's comes down to really just a nice linux vm in windows that is integrated perfectly. I can now right click in a folder, click on open in fluent terminal and a linux like terminal pops up with a fully working linux shell with all the amazing linux tools. Thanks to docker and vscode their integration i can even open vscode from inside the linux terminal and use docker like i do on linux, This is great!!.
Furthermore there are a lot of tools to fix to other annoying windows things like.
Use wox instaid of the windows search for obviouse reasons,
Use Shutup 10 and winaero tweaker to disable windows doing dumb garbage like installing shit without any reason.
With all that together will a lot of other small tweaks i can finally say that using windows is oke now, i can now enjoy the good sides of windows without there beeing to meany down sides. Just like any Linux distro or Mac OS. Everything in the end has there downsides and upsides but as long as there are more upside than down i'm oke with using it.
For some dumb reason windows always installes an old version so i use the insider program to get the latest windows version
- Settings > Updates & Security > Windows Insider Program > do your things here
- Settings > Updates & Security > Update Windows > Check for updates (This will take a shitload of time)
- Shutup 10 disable windows garbage
- git ofc
- chocolatey a package manager for windows
- Programming "languages"
- vsCode code editor
- Windows Terminal or Fluent Terminal my favorite a nice terminal
- Wox & Everything a quick launch tool & file indexer
- Deskpins Pin a window to the top
- Winaero Tweaker Tweak the windows experance
- Espanso System wide text shotcuts
some programs require this or work better so i usually turn this on
Control Panel > Programs > Turn Windows features on or off > hyper-v
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
After installing you might have to convert the subsystem to windows subsystem version 2 using:
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
Download Docker desktop
After install:
- go to Docker desktop settings
- Under command line enable: Enable experimental features
- Under general enable: Enable the experimental WSL 2 based engine
- Install docker in the ubuntu subsystem there is no need to start the docker service
- In the docker desktop settings > Resources > WSL intergration > Enable ubuntu or whatever you have
I use fish as my main shell on linux so i also install it on my subsystem
# 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:
alias h='cd ~'
# ...
See my dotfiles
- Download: https://github.com/dracula/wox
- Place
Dracula.xaml
in%LOCALAPPDATA%\Wox\app-X.X.XXX\Themes
, in wox typerestart wox
>settings
> Theme > Dracula
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
In the WSL profile set this as working directory: \\wsl$\Ubuntu\home\mark
- download Steam customizer tool
- download the dracula skin
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
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 :)
I do most things via the wox so i don't need the taskbar anymore, it's just a waste of space
- 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).
- alt tab terminator: seems like a nice pice of software but i don't think it's wourth the $20
- fast window switcher: i have the taskbar automaticly hidden and beacause of that i can't really use this software sadly, made an issue but seems like it's unmaintained