/Windows-Subsystem-For-Linux-Setup-Guide

An in-depth Guide for getting started with the Windows Subsystem for Linux!

MIT LicenseMIT

Windows Subsystem for Linux Setup

This is an in-depth guide for new and experienced developers on how to get started with the Windows Subsystem for Linux.

Microsoft and Linux

WSL is a Windows 10 feature that allows Windows users to work with a native Linux distro that is directly integrated into Windows. WSL is not a Virtual Machine, an emulator, or a console wrapper; it is literally Linux inside of Windows, directly mounted to the Windows File System, full stop. This guide is here to help developers understand how to get up and running with WSL, how to navigate the workflow, and also includes simple examples to help better explain the workflows.

Video Guide: YouTube Playlist

I highly recommend you watch the videos while you go through this guide! I talked a tad bit slower on purpose so you can watch them on 1.5x or 2x speed too 😁 !

Page 1: Introduction into WSL

Please make sure to star or fork this repo! :bowtie: Thanks!


What this guide covers

By the end of this guide, you will know:

  1. What WSL is, and why it's important.
  2. How to install WSL and the free Ubuntu App.
  3. How the two file systems work together, and how you should work with them.
  4. How to update your terminal, and edit WSL files.
  5. Where, why, and how to install different programs and software.
  6. Additional important information.

Upcoming Additions:

Release date: 01/19

Update: I will be updating this guide very soon now! I have been so busy with the Microsoft LEAP program, a job transition, as well as with learning C++ and C# that I haven't spent any time with WSL since July! Having said that, there are quite a few upcoming additions to this guide which will help with quality of life, guide readability, new vidoes, annotations, checklists, clairifications, and hopefully an exploration into any new major features!

Most importantly, I will be shoring up some areas that may be a struggle for new students and others new to WSL. One of the big ones is on how to use things like NPM for NodeJS: Where does global live, and how you should use it with the WSL workflow?

I will also be creating a requested video where I go through making an entire basic web app to show what the workflow looks like in a real life scenario!

Please make sure to request any thing else you would like to see and I will try to get it into the guide!

Past Additions:

7/18:

  • Getting new laptop on 7/1/18 and will update the doc in that month. ( Update coming soon! Videos will be included! Minor bug fixes! Delayed due to catcing a cold :feelsgood: 😷. (DONE!)

  • More links to all the resources that are used.

  • Video demos, screen shots, and gifs to help visualize what's going on.


Credits

Huge thanks to Izzy Baer for editing this guide!

Thanks to the bashonubuntuonwindows community at Reddit for proofing this guide each update!

Thanks to Brenden Hesse for including this guide in an article he wrote on getting started with WSL ( which I didn't know about until after I started seeing a bunch of traffic here (: )

Also, Thank you to Code Fellows for adopting this guide into their coursework for students who want to go through their courses on Windows machines instead of on a Mac.

Thank you!