My Development Setup
NOTE: Please Read
Yes I still use Windows. No I don't want to switch to Linux. No I don't want to dual boot or use virtual machines. Don't tell me how I should use or not use my own systems. I mainly made this guide as a tutorial for myself so I don't forget how I setup my computers, so don't expect it to be some 10x dev guide.Install the Windows Subsystem for Linux
- Enable WSL by running the code below in PowerShell as Administrator.
> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart > dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
-
Restart your computer then update to WSL2 with this executable: wsl_update_x64.msi
-
Run
wsl --set-default-version 2
. -
Install any Linux Distro of your choosing in the Windows Store. I like to use Ubuntu.
-
Install the Windows Terminal (Preview) on the Windows Store.
- Run the following inside of Ubuntu (or your OS of choice).
$ sudo apt update; sudo apt upgrade -y; sudo apt autoremove -y
Customizing the Terminal
-
Install the Hasklug Nerd Font (or your font of choice) at the Nerd Fonts Downloads, you’ll need to install the Windows Compatible files.
-
You can download my terminal settings from here. NOTE: You will have to change some things such as your username.
- Install Oh My ZSH by running the code below.
$ sudo apt install zsh -y $ sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
- Install Powerlevel10k by running the following code below.
$ git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
- Install
zsh-autosuggestions
andzsh-syntax-highlighting
by running the following.$ git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions $ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
Adding Convenience Plugins and Extensions
- Installing APT packages:
$ sudo apt install fzf neofetch -y
- Install GitHub software.
# Install Git LFS. $ curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash $ sudo apt install git-lfs -y
# Install GitHub CLI. $ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key C99B11DEB97541F0 $ sudo apt-add-repository https://cli.github.com/packages $ sudo apt update; apt install gh -y
- Installing Gem packages:
$ sudo apt install ruby-full build-essential zlib1g-dev -y $ gem install colorls jekyll bundler
- Installing Python3 packages:
$ sudo apt install python3-dev python3-pip python3-setuptools -y $ sudo pip3 install thefuck bpytop
- Installing Node.js with PNPM:
$ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash $ nvm install --lts; npm i -g pnpm
Setup ~/.zshrc
Instead of posting my long ~/.zshrc file here, just download it here: .zshrc You can also download my p10k.zsh here: .p10k.zsh