Line 62: | Line 62: | ||
* Write documentation on how to use the tarball with WSL. | * Write documentation on how to use the tarball with WSL. | ||
* Add our images to the [https://learn.microsoft.com/en-us/windows/wsl/build-custom-distro#adding-your-distribution-to-wsl---install-for-all-wsl-users WSL distribution list] so users can install it with the "wsl --install Fedora" command. | * Add our images to the [https://learn.microsoft.com/en-us/windows/wsl/build-custom-distro#adding-your-distribution-to-wsl---install-for-all-wsl-users WSL distribution list] so users can install it with the "wsl --install Fedora" command. | ||
Optionally, we can include a section on fedoraproject.org to ensure users can discover our WSL image. | |||
== Feedback == | == Feedback == |
Revision as of 19:57, 26 November 2024
Create Fedora Windows Subsystem for Linux Images
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
- Name: Jeremy Cline
- Name: Cloud SIG
- Email: jeremy@jcline.org
Current status
- Targeted release: Fedora Linux 42
- Last updated: 2024-11-26
- [<will be assigned by the Wrangler> devel 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:
- Add a WSL variant to https://src.fedoraproject.org/rpms/fedora-release/
- Provide a WSL configuration file and out-of-the-box experience script
- Create a Kiwi definition to produce a WSL root filesystem tarball.
- Write documentation on how to use the tarball with WSL.
- Add our images to the WSL distribution list so users can install it with the "wsl --install Fedora" command.
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:
- Release engineering: #Releng issue number
- 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+:
- Have access to a Windows installation with WSL 2.4.4+
- Run "wsl --install Fedora"
- Enter the environment by running "wsl -d Fedora"
- Use the interactive out-of-the-box experience script to set up a new user
- Install some applications, start some services, see if things fall over.
For WSL versions prior to 2.4.4:
- Have access to a Windows 10 or 11 installation (VMs should work)
- On the Windows host, download the WSL tarball from <somewhere>
- Open up a Windows terminal and install WSL itself with "wsl --install"
- Import the WSL tarball with "wsl --import Fedora C:\Users\<username>\AppData\Local\WSL\Fedora .\Path\To\Fedora.x86_64.tar.xz"
- Enter the environment with "wsl -d Fedora -u root"
- manually execute the interactive out-of-the-box experience script to set up a new user
- 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.