A Linux Dev Environment on Windows with WSL, Docker, tmux and VSCode
I've spent a full year using WSL and I am still convinced it is the ultimate development environment set up if you use Windows.
Update in 2020: I’ve recorded a new 2020 edition of this set up, but feel free to watch the video below if you’re curious to see how it evolved over time.
From about 2012 I tried all sorts of set ups. Everything ranging from dual booting Linux to using a VMware based Linux VM and now I’m happily using WSL.
I wrote about using WSL since 2017 and I’ve been using it ever since. Over the last year, I’ve evolved my development environment and the video below is the latest iteration as of 2018.
The last video I recorded of my dev environment was in 2015, so I was long overdue for making a new video. Enjoy!
# Demo Video Showing Everything
Timestamped Table of Contents
- 1:08 – Why use Windows?
- 1:44 – Terminal set up (Ubuntu 18.04 WSL / tmux)
- 4:09 – Dealing with Windows updates and restoring terminal sessions
- 5:38 – The tools I use blog post
- 6:22 – Virtual desktops
- 7:28 – Reverse searching your terminal history
- 7:47 – Dotfiles link on GitHub
- 7:57 – Visual Studio Code
- 9:26 – Splitting and resizing windows
- 10:13 – Modifying a web app workflow
- 13:19 – Multiple clipboards with Ditto
- 14:37 – Searching and launching apps with Keypirinha
- 15:19 – Browser and screen sharing tools
- 16:47 – Chatting on IRC with HexChat
- 17:26 – Managing passwords on the command line with pass
- 17:55 – Finance tracking with GnuCash
- 18:26 – Various hardware I use
- 18:58 – Recap of everything
# Reference Links to Install and Configure Everything
- The tools I use
- Getting set up with WSL
- Ubuntu WSL terminal
- tmux tutorial
- Reverse search bash history with fzf
- Dotfiles on GitHub
- VSCode extensions and settings
- Configuring Docker with WSL
- Multiple clipboards with Ditto
- Searching and launching apps quickly with Keypirinha
- IRC with Hex Chat
- Command line password manager using pass
- Tracking finances with GnuCash
# Final Thoughts
It’s nothing but smiles all the way down. I’ve never been this happy and more productive before when it comes to my development environment.
I’m super thankful Microsoft has stepped up their game. I’m excited for the future.
What do you think? Am I missing anything interesting? Let me know below.