How I turned my Windows PC into a productivity machine for development (wsl + hyper + oh my zsh + Dracula)
![Image for post](https://miro.medium.com/max/4800/1*y7wNEitkn423GKVyM_V3Hw.jpeg)
First of all why windows, why not Linux?
I have been using Linux for more than 3 years and I really liked working on it. From day one, I had to deal with all sort of errors, like grub errors, installation errors, etc. Also, I had to switch back to windows anytime I wanted to play games or use Adobe software like adobe XD.
And it was all OK until my Spotify stopped working. I tried many solutions but they only fixed it temporarily. Fortunately, windows released an update with wsl(windows subsystem for Linux) and that was perfect for me. Currently, I am using wsl2 on windows and everything works fine now. No more bugs. Still, I have to deal with updates though!
What is wsl?
WSL is a new feature of Windows 10 (1607 and later) that enables you to run Linux distros directly on Windows 10 alongside your favourite Windows applications. It has several advantages over a virtual machine instance in that it uses very little resources (comparatively) and is highly integrated into the desktop experience.
With WSL it's like using Linux and windows all together + Same Linux commands in the terminal.
Let’s get started
- Here is how to install WSL if u haven’t already.
- Then install Ubuntu from Microsoft store
- Install hyper.js terminal
While experimenting with the setup I tried a lot of terminals including Cygwin, windows new terminal, default Command prompt, etc. I also tried to customize windows PowerShell. But I think hyper is best of them all. It’s highly customizable, powerful and well-tested.
![Image for post](https://miro.medium.com/max/1620/1*bTiw3IOl3NKegohdG69zlw.png)
Setting up hyper
Press Ctrl
+ ,
to bring up Hyper.js configuration file. Look for plugins: [
edit and add my favourite Dracula theme.
plugins: ['hyper-dracula'],</span>
Setup Hyper.js to automatically open Ubuntu on Windows
- Open up Hyper.js configuration again and type
Ctrl
+,
- Scroll down to shell and change it to
C:\\Windows\\System32\\bash.exe
// the shell to run when spawning a new session (i.e. /usr/local/bin/fish)
// if left empty, your system's login shell will be used by default
//
// Windows
// - Make sure to use a full path if the binary name doesn't work
// - Remove `--login` in shellArgs
//
// Bash on Windows
// - Example: `C:\\Windows\\System32\\bash.exe`
//
// PowerShell on Windows
// - Example: `C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`
shell: 'C:\\Windows\\System32\\bash.exe',
// for setting shell arguments (i.e. for using interactive shellArgs: `['-i']`)
// by default `['--login']` will be used
shellArgs: [],
Install ZSH on Ubuntu Bash Windows
- Run this
sudo apt-get install zsh
- Open your bash profile
vim~/.bashrc
- Add this to set it to use ZSH as default:
screenfetch
bash -c zsh
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples# If not running interactively, don't do anything
case $- in</span>
Install Oh My ZSH
Install Oh My Zsh with sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
Change the ZSH Theme to avit
vim ~/.zshrc
# Set name of the theme to load. Optionally, if you set this to "random"
# it'll load a random theme each time that oh-my-zsh is loaded.
# See [https://github.com/robbyrussell/oh-my-zsh/wiki/Themes](https://github.com/robbyrussell/oh-my-zsh/wiki/Themes)
ZSH_THEME="avit"
Don’t forget to add syntax highlighting and auto-suggestions plugin. These come really handy.
![Image for post](https://miro.medium.com/max/1626/1*3rh9GSRxxY4OJypDQ2agEA.png)
Install other Oh My ZSH plugins — https://github.com/robbyrussell/oh-my-zsh
Install other Hyper.js themes — https://hyperthemes.matthi.coffee/
Dracula for everything
![Image for post](https://miro.medium.com/max/3840/1*Ofhzb_RJF9pT11cfocE6jg.png)
I am using Dracula theme for almost everything — Firefox, slack, hyper, VS Code.
Check out Dracula theme it’s FREE. Its available for almost everything.
Check out my GitHub repo for complete hyper configuration. https://github.com/abhinandansharma/hyper
There is a lot more that I wanted to write, but I am saving that for another article. This is already getting boring. Comment below for any queries!
Thanks for reading till the END! Stay tuned for the next one.