marp: true title: Visual Studio Code for WSL author: P.Y. Barriat description: How to use VSCode with WSL backgroundImage: url('assets/back.png') _backgroundImage: url('assets/garde.png') footer: 14/06/2023 | Visual Studio Code for WSL | PY Barriat _footer: "" paginate: true _paginate: false
https://gogs.elic.ucl.ac.be/pbarriat/learning-vscode
Pierre-Yves Barriat
ELIC Training Sessions June 14th, 2023
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
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 :+1:
Linux from CII interface is overkill
based on Virtualbox: heavy workload :fearful:
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... :muscle:
From CII interface, ask for an Admin access
Open a Powershell terminal in Administrator mode
Copy paste this line and press Enter
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
From CII interface, ask for an Admin access
Download the WSL2 update and install it (double click on the file)
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
Open a Powershell terminal in Administrator mode
Copy paste this line and press Enter
wsl --set-default-version 2
(Open Ubuntu) and choose a login/password
In the Ubuntu terminal do
sudo apt update
sudo apt upgrade
Open a Powershell terminal in User mode and do
wsl --update
maybe an Admin login/password is required (so ask for with CII interface)
Open a new Ubuntu terminal and do
sudo apt update
sudo apt upgrade
sudo apt install x11-apps -y
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
Open VS Code and install WSL for VS Code
Connect to WSL using a distro (Ubuntu 22.04)
Install extensions for "WSL: Ubuntu 22.04"
Create a new Juyter Notebook
Fill the first cell
import numpy as np
Try to run the cell
you must choose a Python environment first : Python 3.6 and Install
But... :boom:
So open your first WSL terminal in VS Code
In this Linux terminal, do
sudo apt install python3-pip
Try again to run the cell !
But now... :boom:
In your Linux terminal, install the missing Python extension ...
pip instal numpy
... and run the cell again: great, it's OK now :smiley:
Install Git : sudo apt install git -y
Now clone this Git repository
git clone https://gogs.elic.ucl.ac.be/pbarriat/learning-vscode
You don't already know what's Git :question: Shame on you ! :confounded:
It's not to late: take a look here https://gogs.elic.ucl.ac.be/TECLIM/Git_Training
Now open the file example.ipynb
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 :exclamation:
Remote - SSH
: lets you use any remote machine with a SSH serverTabnine
: code faster with AI code completionsRegex Previewer
: shows the current regular expression's matchesModern Fortran
: Fortran syntax is missing in built-in versionSelect Remote-SSH: Open Configuration File
Host cyclone
HostName cyclone.elic.ucl.ac.be
User pbarriat
Visual Studio Code is now configured and ready to connect to your server :
click on the green Open a remote window
button in the bottom left-hand corner and select Remote-SSH: Connect to Host
On ELIC workstation, choose a Python environment from
ELIC_Python
module :/opt/easybuild/...
I strongly recommand to install Windows Terminal Preview
from Microsft Store