Visual Studio Code for WSL

https://gogs.elic.ucl.ac.be/pbarriat/learning-vscode

Pierre-Yves Barriat
ELIC Training Sessions June 13th, 2023

What is WSL ❓

Windows Subsystem for Linux (WSL) allows you to leverage the benefits of Linux package management and command line tools to streamline your development workflow. This is particularly useful for web developers and data scientists

The easiest way to access your Ubuntu development environment in WSL is using Visual Studio Code via the built in Remote extension

01/06/2023 | Visual Studio Code for WSL | PY Barriat

What is Visual Studio Code ❓

Visual Studio Code (VS Code) is a lightweight but powerful source code editor which runs on your desktop and is available for Windows, macOS and Linux.

It has a rich ecosystem of extensions for languages (such as C++, Fortran, Java, Python, etc) and runtimes (Git, Jupyter, etc)

VSC is one of the most popular and powerful text editors used by software engineers today

free, open-source and available for macOS, Windows and Linux 👍

01/06/2023 | Visual Studio Code for WSL | PY Barriat

WSL on a Windows UCLouvain PC

Linux from CII interface is overkill

based on Virtualbox: heavy workload 😨

No auto process (yet) to install WSL from UCLouvain IT support

You must install WSL by your own with the Administrator access from CII interface

Don't worry: just follow the guideline below... 💪

01/06/2023 | Visual Studio Code for WSL | PY Barriat

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Windows required features

  1. From CII interface, ask for an Admin access

  2. Open a Powershell terminal in Administrator mode

  3. Copy paste this line and press Enter

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  1. Copy paste this line and press Enter
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  1. Restart your computer
01/06/2023 | Visual Studio Code for WSL | PY Barriat

Install WSL2

  1. From CII interface, ask for an Admin access

  2. Download the WSL2 update and install it (double click on the file)

    https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

  3. Open a Powershell terminal in Administrator mode

  4. Copy paste this line and press Enter

wsl --set-default-version 2
01/06/2023 | Visual Studio Code for WSL | PY Barriat

Install Ubuntu 22.04 from Microsft Store

01/06/2023 | Visual Studio Code for WSL | PY Barriat

First configuration of Ubuntu

(Open Ubuntu) and choose a login/password

In the Ubuntu terminal do

sudo apt update

sudo apt upgrade
01/06/2023 | Visual Studio Code for WSL | PY Barriat

VS Code

You can install Visual Studio Code from the web link here

during installation, under the Additional Tasks step, ensure the Add to PATH option is checked

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Open VS Code and install WSL for VS Code

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Connect to WSL using a distro (Ubuntu 22.04)

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Install extensions for "WSL: Ubuntu 22.04"

  • Python
  • Jupyter

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Jupyter Notebook in VS Code

Create a new Juyter Notebook

Fill the first cell

import numpy as np
01/06/2023 | Visual Studio Code for WSL | PY Barriat

Try to run the cell

you must choose a Python environment first : Python 3.6 and Install


But... 💥

01/06/2023 | Visual Studio Code for WSL | PY Barriat

So open your first WSL terminal in VS Code

In this Linux terminal, do

sudo apt install python3-pip
01/06/2023 | Visual Studio Code for WSL | PY Barriat

Try again to run the cell !

But now... 💥

01/06/2023 | Visual Studio Code for WSL | PY Barriat

In your Linux terminal, install the missing Python extension ...

pip instal numpy

... and run the cell again: great, it's OK now 😃

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Let's try a full notebook example

First clone this Git repository

git clone https://gogs.elic.ucl.ac.be/pbarriat/learning-vscode

You don't already know what's Git ❓
Shame on you ! 😖

It's not to late: take a look here
https://gogs.elic.ucl.ac.be/TECLIM/Git_Training

Now open the file example.ipynb

01/06/2023 | Visual Studio Code for WSL | PY Barriat

The first cell implies you must install some requirements

To run this example, install the extensions below

pip install netCDF4
sudo apt install libgeos-dev libgdal-dev
pip install cartopy

Now, try to run all the cells of this notebook ❗

01/06/2023 | Visual Studio Code for WSL | PY Barriat

Visual Studio Code for WSL 💬

01/06/2023 | Visual Studio Code for WSL | PY Barriat