feat: Support rolling kernel versions officially via config file.
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 33.7k
- Forks
- 1.8k
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 116
Description
**Is your feature request related to a problem? Please describe.**
The current version of WSL only supports LTS kernels built by Microsoft officially. It may lack features and contain security vulnerabilities. Some distros like Arch Linux naturally expects a rolling kernel.
**Describe the solution you'd like**
It would be great if Microsoft offered official release channels (LTS as default, rolling stable, nightly, real-time, etc) instead of having to piece together a community release using the `kernel` and `kernelModules` options in `.wslconfig` pointing to a local path. This would provide more official support for newer kernels and CVEs. Something like `kernelRelease` and `kernelReleaseChannel` could work well.
```
# 🚨 -- MOCK EXAMPLE CONFIG ONLY
# .wslconfig or /etc/wsl.conf per-distribution
kernelRelease=7.0
kernelReleaseChannel=stable | lts | nightly
# 🚨 -- MOCK EXAMPLE CONFIG ONLY
```
In which case, Windows would include some service installed to fetch the release each night (if you are on `nightly` channel) just like `scoop`.
Even better would be applying this in `wsl.exe` such that output could be verbosely printed:
```
# 🚨 -- MOCK EXAMPLE CONFIG ONLY
❯ wsl -l -v
NAME STATE VERSION KERNEL
* numbat Running 2 7.0-stable
arch Running 2 7.0-nightly
jammy Stopped 2 6.7-stable
# 🚨 -- MOCK EXAMPLE CONFIG ONLY
```
Most people aren't going to have any interest or need to compile a custom kernel (or seek out community built kernels) but having some casual-user-friendly porcelain in wsl.exe to switch official kernel release channels would be nice.
**Describe alternatives you've considered**
Manage kernels like a real linux distro using distro packages and wsl would inject kernel modules.
**Additional context**
Outdated kernels may have CVEs Example: #40365
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names .wslconfig, /etc/wsl.conf, and wsl.exe as the relevant interfaces; begin by tracing how the current kernel and kernelModules settings are handled. Done would require an agreed design and implementation for official kernel channels, fetching or updating behavior, and visible channel and version output.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux
- Domain
- cli, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100