From Fedora Project Wiki

Revision as of 17:27, 3 December 2024 by Amoloney (talk | contribs) (announcing the change)


Create Fedora Windows Subsystem for Linux Images

This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

Recent versions of Windows support running Linux guests via Windows Subsystem for Linux (WSL). These can be distributed via tarballs, Appx packages, or via the Windows Store. The purpose of this change is to start producing Fedora images for users of WSL.

Distributing images via the Windows Store requires agreeing to the store policies and developer agreement, which is something Fedora has historically not been comfortable with. This change proposal is to distribute a tarball. In recent versions of WSL (version 2.4.4 and greater), the user experience has been greatly improved for WSL images outside the store. These include allowing tarballs to distribute first-time setup scripts and icons as part of the distribution instead of as a Windows application, as well as click-to-install support for tarballs using the ".wsl" file extension. Therefore, this proposal will work best with version 2.4.4+ of WSL, although documentation will be provided for users on older releases.

Owner


Current status

  • Targeted release: Fedora Linux 42
  • Last updated: 2024-12-03
  • Announced
  • Discussion thread
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Recent versions of Windows support running Linux distributions using Windows Subsystem for Linux (WSL). In the latest version, WSL 2, a single virtual machine is managed by the Windows host and guest Linux distributions run as containers within it. For basic WSL support, Fedora needs to distribute a root filesystem tarball. The Fedora base container can already be used with WSL, but it is not ideal as it intentionally excludes documentation and non-essential tools. There also isn't official documentation on how to use it with WSL.

The goal of this change is to complete the following:

Optionally, we can include a section on fedoraproject.org to ensure users can discover our WSL image.

Feedback

Benefit to Fedora

A dedicated image with documentation allows people to easily try out a Fedora environment from their Windows installations. When it comes time to install a Linux distribution on their computer, they can be more confident when choosing Fedora.

Scope

  • Proposal owners:
  • Other developers:
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with Community Initiatives:

Upgrade/compatibility impact

How To Test

For WSL versions 2.4.4+:

  1. Have access to a Windows installation with WSL 2.4.4+
  2. Run "wsl --install Fedora"
  3. Enter the environment by running "wsl -d Fedora"
  4. Use the interactive out-of-the-box experience script to set up a new user
  5. Install some applications, start some services, see if things fall over.

For WSL versions prior to 2.4.4:

  1. Have access to a Windows 10 or 11 installation (VMs should work)
  2. On the Windows host, download the WSL tarball from <somewhere>
  3. Open up a Windows terminal and install WSL itself with "wsl --install"
  4. Import the WSL tarball with "wsl --import Fedora C:\Users\<username>\AppData\Local\WSL\Fedora .\Path\To\Fedora.x86_64.tar.xz"
  5. Enter the environment with "wsl -d Fedora -u root"
  6. manually execute the interactive out-of-the-box experience script to set up a new user
  7. Install some applications, start some services, see if things fall over.

User Experience

Dependencies

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?) Don't ship the tarball
  • Contingency deadline: N/A (not a System Wide Change)
  • Blocks release? No

Documentation

Add a section somewhere in https://docs.fedoraproject.org/ (perhaps quick docs) with a short guide on installing the tarball. This will cover both older versions of WSL which require more manual steps as well as the newer, easier method of installation.

Release Notes