From Fedora Project Wiki

Revision as of 00:40, 3 February 2025 by Patricklang (talk | contribs)

WSL

Date 2025-02-17
Time all day

Website QA/Test Days
Matrix #test-day:fedoraproject.org(other clients|?) , #cloud:fedoraproject.org(other clients|?)
Mailing list test


Can't make the date?
If you come to this page after the test day is completed, your testing is still valuable, and you can use the information on this page to test, file any bugs you find, and add your results to the results section. If this page is more than a month old when you arrive here, please check the current schedule and see if a similar but more recent Test Day is planned or has already happened.

What to test?

This Test Day will focus on running Fedora 42 in WSL.

In Fedora 42, a new image is being built for use with Windows Subsystem for Linux (commonly referred to as WSL). This will allow users to have a simple, easy to set up Fedora environment for development and testing use.

Multiple distributions may be run side by side in different namespaces, sharing the same kernel. Conceptually, the workflow is similar to a container, but it has been optimized to support an interactive Linux development & testing. WSL manages a lightweight VM with Wayland, PulseAudio, and some extra filesystem mounts provided. The user's choice of distro, such as Fedora, is run in an isolated namespace with its own root image. Filesystem state, including the root filesystem and home directories are also preserved between uses.

The Fedora changes are fully described at Changes/FedoraWSL. It is similar to the cloud and container images, but some developer-focused packages such as manual pages, wget, and vim have been preinstalled. Some changes specific to WSL for X11 and Wayland compatibility have also been preconfigured.


Who's available

The following cast of characters will be available testing, workarounds, bug fixes, and general discussion:

You can chat with us on Matrix. See the infobox on top of the page to learn where to join.

Prerequisite for Test Day

  • Windows 11 (recommended), amd64 or arm64. Windows 10 may work, but is not a focus as it will be end-of-life soon
  • Virtualization extensions must be available. If you are testing in a VM - be sure this is enabled in your VM settings. Some cloud services restrict this to specific instance types.


Install WSL on Windows 11

Setting up WSL is pretty simple. wsl --install will enable the hypervisor prerequisites, and prompt for reboot if needed. If a reboot is needed, you may need to run wsl --install a second time after reboot. (TODO: verify the reboot steps). This will also install a default Ubuntu image. Fedora can be installed in the next step.

Full documentation is available at [1]

Installing Fedora in WSL

Downloading the Fedora WSL tarball

TODO: add a specific link, or a publishing page to get the latest tarball

Installing Fedora with wsl.exe

First, check the version of WSL you are using by running wsl.exe --version. Follow the steps below based on the version.

For WSL versions 2.4.4+:

  1. From the command line, install the tarball with wsl --install --from-file .\path\to\Fedora.tar.xz
  2. Enter the environment by running "wsl -d Fedora"
  3. When prompted, provide a username. This will be the default user, and it will be added to the groups for sudo usage

For WSL versions prior to 2.4.4:

(These steps assume you are using PowerShell)

  1. Make a directory for the Fedora distribution with mkdir $ENV:LOCALAPPDATA\WSL\Fedora
  2. Import the WSL tarball with wsl --import Fedora $ENV:LOCALAPPDATA\WSL\Fedora .\Path\To\Fedora.x86_64-Rawhide.tar.xz
  3. Enter the environment with wsl -d Fedora -u root
  4. Manually run /usr/libexec/wsl/oobe.sh to create the default user
  5. exit the environment logged in as root
  6. Enter the environment as the newly created user with wsl -D Fedora -u <username>


How to test?

A simple regression test suite is available at QA:WSL_regression_testing that covers some basic usage and configuration.


Please also see WSL exploratory testing for some more ideas outside of the pre-defined test cases.


Reporting bugs

Perhaps you've found an already-reported bug. Please look at:

We really need bug reports!
Please note that just mentioning your problem into the comments section on the results page is not very helpful. Very often those problems only happen in specific circumstances, or with specific steps taken. We need the logs and screenshots, and we need to be able to ask you followup questions. Please file bug reports, it's much more useful than a short comment. Thank you!

When filing the bug, it's very helpful to include:

  • WSL & Windows versions, which you can retrieve with wsl.exe --version
  • exact steps you've performed (and whether you can reproduce it again)
  • screenshots or videos, if applicable
  • system journal (log), which you can retrieve by journalctl -b > journal.txt
  • all output in a terminal, if started from a terminal
  • your system description

If you are unsure about exactly how to file the report or what other information to include, just ask us.

Please make sure to link to the bug when submitting your test result, thanks!



Test Results

Test results will be exported here once the test day is over. See How to test? section for information how to submit results and see the live results.