You can "manualy install" ANY linux you want! including not-provided Tinycore, Alpine linux, etc.
Of course FIRST you need a working distro, M$ provides you with few ready to use: Ubuntu is OK.
wsl -l -o
The following is a list of valid distributions that can be installed.
Install using 'wsl.exe --install <Distro>'.
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-24.04 Ubuntu 24.04 LTS
OracleLinux_9_1 Oracle Linux 9.1
openSUSE-Tumbleweed openSUSE Tumbleweed
In that linux you, in an arbitrary folder (/tmp/fake) you
1. extract a "root" structure (aka /bin/, /usr, etc) ex: from Tinycore root.gz.
2. using tar, you make an archive of that "/tmp/fake", as mylinux.tar.
3. from Windows10 use "wsl--import-in-place <Distro> <FileName>", so "wsl - --import-in-place myTinyCore mylinux.tar"
Enjoy your "myTinyCore" distro. (is a VHD - virtual disk, booted with a kernel 5.15 of microsoft).
FYI: I created an EMPTY file in wondows11 with notepad (nano.txt). and using "wsl - --import-in-place TINY nano.txt", and windows will buid for me a VHDX disk. Then in Ubuntu I mount it and then I can create any Linux root structure, even "/bin" as a simlink to "/usr/bin" etc.
This is the procedure to create my personal Archlinux, Apline, Tinycore starting from ZERO files on disk.
PS:
you do NOT need a kernel (neither its modules for sound, video, network etc), windows provides one for you! You just need a root structure, as in chroot.
PS2:
You do NOT need a Xorg server. windows provides one for you,
with hardware acceleration! basicaly you run a linux under a hypervisor (like qemu, virtualbox, vmware) but with multhreading.
wsl -v
WSL version: 2.3.21.0
Kernel version: 5.15.153.1-2
WSLg version: 1.0.65 -- all your graphical applications run in linux, but you see them as windows appls , even outside of linux box/frame.
MSRDC version: 1.2.5620
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.26100.1-240331-1435.ge-release
Windows version: 10.0.22631.4169