Use X11 forwarding with WSL: Difference between revisions

From IIHE Wiki
Jump to navigationJump to search
 
(2 intermediate revisions by the same user not shown)
Line 4: Line 4:
VCXSVR will help you to have X11 forwarding enabled.<br />
VCXSVR will help you to have X11 forwarding enabled.<br />


'''Starting from Windows 10 build 2004 you can install WSL2 & a Linux distro from an elevated prompt in one command, more info [https://wiki.iihe.ac.be/index.php?title=Use_X11_forwarding_with_WSL#Installing_using_WSL.exe here].'''
'''Starting from Windows 10 build 2004 you can install WSL2 & a Linux distribution from an elevated prompt in one command, more info [https://wiki.iihe.ac.be/index.php?title=Use_X11_forwarding_with_WSL#Installing_using_WSL.exe here].'''
 
=Windows 10=


==Pre-requities==
==Pre-requities==
Line 28: Line 30:
More info about Chocolatey is [https://chocolatey.org/install available here]
More info about Chocolatey is [https://chocolatey.org/install available here]


==Install WSL2 & VCXSVR==
==Install WSL1 & VCXSVR==


Open a Powershell shell as Administrator by pressing the following keys :
Open a Powershell shell as Administrator by pressing the following keys :
Line 38: Line 40:
On the Powershell window type the following :
On the Powershell window type the following :


*<code>choco install vcxsrv microsoft-windows-terminal wsl2 -y</code>
*<code>choco install vcxsrv microsoft-windows-terminal wsl -y</code>


This command will install Windows Terminal, VCXSRV and enable WSL2 to enable X11 forwarding.
This command will install Windows Terminal, VCXSRV and enable WSL to enable X11 forwarding.


Leave the Powershell window open since we still need it to install your distribution.
Leave the Powershell window open since we still need it to install your distribution.
Line 57: Line 59:
*'''Fedora Remix for WSL'''
*'''Fedora Remix for WSL'''


Once you choose the distro you can download and install it in one Powershell command :
Once you choose the distribution you can download and install it in one Powershell command :


* (To download and install) '''Ubuntu 18.04'''
* (To download and install) '''Ubuntu 18.04'''
Line 93: Line 95:
<code>choco install wsl-fedoraremix -y</code>
<code>choco install wsl-fedoraremix -y</code>


==Starting The distro==
==Starting The distribution==


* Once you installed the distro you can start it from the Start menu :
* Once you installed the distribution you can start it from the Start menu :


[[Image:WSL_Debian_Start_Menu.PNG]]
[[Image:WSL_Debian_Start_Menu.PNG]]
Line 105: Line 107:
[[Image:WSL_Init_Success.PNG|820x420px]]
[[Image:WSL_Init_Success.PNG|820x420px]]


* Let's update the software on the distro (Debian or Ubuntu) :
* Let's update the software on the distribution (Debian or Ubuntu) :


<code>sudo apt update && sudo apt upgrade -y</code>
<code>sudo apt update && sudo apt upgrade -y</code>
Line 119: Line 121:
<code>echo "export DISPLAY=localhost:0.0" >> ~/.bashrc</code>
<code>echo "export DISPLAY=localhost:0.0" >> ~/.bashrc</code>


*Now exit your terminal and start the distro again.
*Now exit your terminal and start the distribution again.


*Start VCXSRV on Windows and start xclock on the distro terminal :
*Start VCXSRV on Windows and start xclock on the distribution terminal :


[[image:WSL_Start_VCXSRV.PNG]]
[[image:WSL_Start_VCXSRV.PNG]]
Line 129: Line 131:
You should see a clock appears on Windows.
You should see a clock appears on Windows.


*Now you have a complete Linux distro installed on Windows 10 and X11 forwarding enabled.
*Now you have a complete Linux distribution installed on Windows 10 and X11 forwarding enabled.
 
=Windows 11=


==Installing using WSL.exe==
==Installing using WSL.exe==


From Windows build 2004 you can now install WSL2 and a Linux distro directly from an elevated command prompt using WSL.exe.
From Windows 11 & Windows 10 build 2004 and later you can install WSL2 and a Linux distribution directly from an elevated command prompt using WSL.exe.
 
*Note that you need an up to date Windows 11 or a Windows 10 starting from Build 2004 and the update KB5004296 installed.


*Note that you need an up to date Windows 10 starting from Build 2004 and the update KB5004296 installed.
*WSL2 does '''NOT''' need a X11 server to be installed on Windows to enable x11 forwarding, it will work out of the box.


*If you want to install Ubuntu LTS just type the following from an elevated command prompt :
*If you want to install Ubuntu LTS just type the following from an elevated command prompt :
Line 143: Line 149:
This command will setup WSL2 and install Ubuntu LTS.
This command will setup WSL2 and install Ubuntu LTS.


*If you you want to list available distros use the following command :
*If you you want to list available distributions use the following command :


<code>wsl --list --online</code>
<code>wsl --list --online</code>


*Once you choose the distro that you want to install use the following command :
*Once you choose the distribution that you want to install use the following command :


<code>wsl --install -d <DistroName></code>
<code>wsl --install -d <distributionName></code>


(replace <DistroName> with the name of the distro you want to install eg "wsl --install -d debian".)
(replace <DistributionName> with the name of the distribution you want to install eg "wsl --install -d debian".)




*After the script complete you need to restart your computer.
*After the script complete you need to restart your computer.
==Starting The distribution==
* Once you installed the distribution you can start it from the Start menu :
[[Image:WSL_Debian_Start_Menu.PNG]]
* You have to set a username and password '''Note that you can't use the same username as your Windows username''':
[[Image:WSL_Create_User_Name.PNG|820x420px]]
[[Image:WSL_Init_Success.PNG|820x420px]]
* Let's update the software on the distribution (Debian or Ubuntu) :
<code>sudo apt update && sudo apt upgrade -y</code>
[[Image:WSL_Upgrade.PNG|820x420px]]
*Install X11 apps to test X11 Forwarding :
<code>sudo apt install x11-apps -y</code>
*Start xclock on Linux VM and start xclock on the distribution terminal :
[[image:WSL_Xclock_Running.PNG]]
You should see a clock appears on Windows.
*Now you have a complete Linux distribution installed on Windows and X11 forwarding enabled trough WSL2.

Latest revision as of 14:19, 8 November 2022

About

This page will help you to install Windows Subsystem for Linux and X11 forwarding on Windows 10 or Windows 11.
Windows Subsystem for Linux can run a complete Linux OS inside Windows.
VCXSVR will help you to have X11 forwarding enabled.

Starting from Windows 10 build 2004 you can install WSL2 & a Linux distribution from an elevated prompt in one command, more info here.

Windows 10

Pre-requities

  • Windows 10 Windows 11.
  • Administrative rights on your computer.
  • Chocolatey, the Windows package manager installed.

Install Chocolatey

Open a Powershell shell as Administrator by pressing the following keys :

  • Windows key + X

Paste the following in the Powershell window :

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

Once Chocolatey is installed close the Powershell window.

More info about Chocolatey is available here

Install WSL1 & VCXSVR

Open a Powershell shell as Administrator by pressing the following keys :

  • Windows key + X

On the Powershell window type the following :

  • choco install vcxsrv microsoft-windows-terminal wsl -y

This command will install Windows Terminal, VCXSRV and enable WSL to enable X11 forwarding.

Leave the Powershell window open since we still need it to install your distribution.

Install your Linux distribution on WSL

Now you need to choose witch distribution you want to install on your computer :

  • Ubuntu 18.04
  • Ubuntu 20.04
  • Ubuntu 22.04
  • Debian GNU/Linux
  • Kali Linux
  • openSUSE 42.2 (Malachite)
  • SUSE Linux Enterprise Server 12 SP2
  • Fedora Remix for WSL

Once you choose the distribution you can download and install it in one Powershell command :

  • (To download and install) Ubuntu 18.04

USE :

choco install wsl-ubuntu-1804 -y

  • Ubuntu 20.04

choco install wsl-ubuntu-2004 -y

  • Ubuntu 22.04

choco install wsl-ubuntu-2204 -y

  • Debian GNU/Linux

choco install wsl-debiangnulinux -y

  • Kali Linux

choco install wsl-kalilinux -y

  • openSUSE 42.2 (Malachite)

choco install wsl-opensuse -y

  • SUSE Linux Enterprise Server 12 SP2

choco install wsl-sles -y

  • Fedora Remix for WSL

choco install wsl-fedoraremix -y

Starting The distribution

  • Once you installed the distribution you can start it from the Start menu :

  • You have to set a username and password Note that you can't use the same username as your Windows username:

  • Let's update the software on the distribution (Debian or Ubuntu) :

sudo apt update && sudo apt upgrade -y

  • Install X11 apps to test X11 Forwarding :

sudo apt install x11-apps -y

  • Enable X11 forwarding :

echo "export DISPLAY=localhost:0.0" >> ~/.bashrc

  • Now exit your terminal and start the distribution again.
  • Start VCXSRV on Windows and start xclock on the distribution terminal :

You should see a clock appears on Windows.

  • Now you have a complete Linux distribution installed on Windows 10 and X11 forwarding enabled.

Windows 11

Installing using WSL.exe

From Windows 11 & Windows 10 build 2004 and later you can install WSL2 and a Linux distribution directly from an elevated command prompt using WSL.exe.

  • Note that you need an up to date Windows 11 or a Windows 10 starting from Build 2004 and the update KB5004296 installed.
  • WSL2 does NOT need a X11 server to be installed on Windows to enable x11 forwarding, it will work out of the box.
  • If you want to install Ubuntu LTS just type the following from an elevated command prompt :

wsl --install

This command will setup WSL2 and install Ubuntu LTS.

  • If you you want to list available distributions use the following command :

wsl --list --online

  • Once you choose the distribution that you want to install use the following command :

wsl --install -d <distributionName>

(replace <DistributionName> with the name of the distribution you want to install eg "wsl --install -d debian".)


  • After the script complete you need to restart your computer.

Starting The distribution

  • Once you installed the distribution you can start it from the Start menu :

  • You have to set a username and password Note that you can't use the same username as your Windows username:

  • Let's update the software on the distribution (Debian or Ubuntu) :

sudo apt update && sudo apt upgrade -y

  • Install X11 apps to test X11 Forwarding :

sudo apt install x11-apps -y

  • Start xclock on Linux VM and start xclock on the distribution terminal :

You should see a clock appears on Windows.

  • Now you have a complete Linux distribution installed on Windows and X11 forwarding enabled trough WSL2.