What is WSL?
What Windows Subsystem for Linux is, why Salad's container environment needs it, and how to check, update or repair it.
WSL (Windows Subsystem for Linux) is a Windows feature that runs a Linux system inside a lightweight virtual machine. Salad uses WSL 2 to run its container environment, a Linux VM called Salad Enterprise Linux, which is where every container job runs.
Why Salad needs it
Container jobs are Linux programs. Running them inside WSL keeps the job's data separate from the rest of your PC (the job cannot see your files, and you cannot see the job's), and gives every Chef's machine the same base to run from, so jobs behave the same everywhere.
For the container environment to work, your PC needs three things:
- Virtualization enabled in the BIOS. See How to enable virtualization support.
- The modern WSL package from Microsoft (the Store/MSIX version), not only the WSL that ships inside Windows.
- An interactive desktop session. WSL cannot start while the PC sits at the sign-in screen or is connected over Remote Desktop. See Using remote desktop with Salad.
How WSL gets installed
The Salad app installs and configures WSL for you when you set up container jobs in Settings, then asks you to reboot. During that restart Windows may show "Updates are underway" or "Customizing features for you". That is normal; do not turn the PC off.
Check that WSL is installed correctly
Open PowerShell and run:
wsl --version
wsl -l -vwsl --versionshould print a WSL version line (plus kernel and Windows versions). If it prints usage text instead of a version, you only have the old in-box WSL: see the Windows 10 note below.wsl -l -vshould list salad-enterprise-linux with VERSION 2 once Salad has set up the container environment.
Common problems
Enabling WSL manually
If Salad's setup fails, you can install WSL yourself: open PowerShell as administrator, run wsl --install, and
reboot. Then run the container job setup again from the Salad app's Settings. Do not edit .wslconfig by hand unless a
guide tells you to; see
Restoring .wslconfig to Salad default.
If the container environment still fails to start or update, follow Failed to update container environment.
Last updated on

