Parrot on WSL2

Installing on WSL2

Note: This option only works in Windows 10, where our final set up will include a GUI and CLI for Parrot OS by upgrading a Debian WSL app.


Follow this tutorial via Microsoft Docs


Running Windows 10, updated to version 2004
Build 19041 or higher.
64-bit Machine (for Kernel Update)

Install WSL

Open PowerShell as Admin and run:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

Restart your machine and complete WSL install

Update to WSL 2

Open PowerShell as Admin

wsl --set-default-version 2

If you see

WSL 2 requires an update to its kernel component. For information please visit

Download and install the MSI x64 Linux Kernel.

Install Debian

  1. Open the Microsoft Store and select Debian distro
  2. Get and install the application
  3. Create a unix user account (ex. parrot) and password
  4. Ensure that Debian is running on WSL 2


wsl --list --verbose
wsl --set-version <distribution name> <versionNumber>

Success! You now have WSL2 and Debian installed :slight_smile:

Debian -> Parrot :parrot:

Let’s get to the fun stuff!
In your CLI, copy and paste to get the
Alternatively, copy the raw text if you don’t trust me :sob:

curl -o
chmod a+x
sudo ./

Select 1. Install Core Only

Why: This will get the correct sources.list for the parrot repositories.
I highly recommend this option!

Update works, but upgrade returns:

  • 404 archives/packages not found

Previous: /etc/apt/sources.list
New: /etc/apt/sources.list.d/*

debian.list (empty)
parrot.list (auto-generated)

My parrot.list

deb rolling main contrib non-free
#deb-src rolling main contrib non-free
deb rolling-security main contrib non-free
#deb-src rolling-security main contrib non-free

You may use ANY mirror, but I the rolling release was the only successful endpoint for upgrading.

When you enter root you should see the parrot CLI styling :sparkling_heart:

To Upgrade

sudo su

This will install all dependencies for the OS, and important packages, but no security tools, or GUI.

Installing a GUI

apt-get install parrot-interface parrot-interface-full parrot-tools-full

Installing Security Tools

apt -y --allow-downgrades install parrot-interface parrot-interface-full parrot-tools-full

To Access the GUI

As of now, we should have a WSL 2 instance with all of the bells and whistles.
So, to access this machine, we will use the onboard application, Remote Desktop Connection.


This will create an access port on your Local Area Network through the WSL network adapter.
Allows you to connect to an operating system.
Note: You can only remote into a single WSL machine at a time (b/c they share an IP address)

apt-get install xrdp

I created a bash file ( with

/etc/init.d/xrdp start
ip addr

Side Note: I recommend Windows Terminal (Preview) for WSL2

Highlighted is the IP Address you are looking for.
Enter this into the RDC program and click Connect.
Once you enter the creds into the XRDP Server, you may now access the Parrot GUI.

And it works :slight_smile:


We don’t officially support WSL2 but good to know it works. Maybe you can create new full tutorial so @tissy can add it to our doc?

@dmknght Yeah I’d love to contribute :slight_smile:. Since this works with Kali Linux, I figured it was worth a try.
It’s essentially “building Parrot from scratch” but ya’ll made it a LOT easier!

What are you looking for regarding documentation?
Where could I submit this and in what format?

You can edit the topic to [Tutorial] and write here. The forum supports markdown syntax. We’ll copy it and add you to list of contributors :smiley:

@dmknght Done! Lmk if there is anything else I should include :gift:

FYI, I could only include two links in my post, I wanted to include the MSI link and How-To-Upgrade Community post.

Oh i don’t know much about that. @tissy can you help him about the writing tutorial please?

Hi, sorry for being late. I am also new to ParrotSec OS, but does wsl2 use the pre-built wireless adapter of Windows? Can you use major programs like Nmap, BurpSuite, and Ettercap?

yes sure it does

1 Like

I saw you message about the public key. Did you resolve it with verify-keys tutorial?

I had the same issue, but it was too late to change this thread

Well kinda… I didn’t have all the packages to get that pub ,I did manual installing for each one

so i tried this tutorial and got up to getting on the system but instead of installing core only i selected security. /etc/apt/sources.list.d/* access is denied or not found (its tempramental). and i cant update or install anything as it cant be found or the public key is not available. should i reinstall debian and start from there or can i save this?

Did you get this to work?

  1. Set up the public key immediately after installing core for the security packages in some cases return 404 due to a failed mirror list
  2. Regarding Access denied did you run it as root? and then try to access it as a user?

Since this is purely a sources.list issue, you can just delete the sources.list.d/ dir and just copy the sources.list from Debian :slight_smile:

Lmk is this is helpful!

I’m having some issues with the install
Err:1 lts/main amd64 libtext-iconv-perl amd64 1.7-5+b7
404 Not Found [IP: 443]