Description
WSL2 is how most Windows developers run Linux tooling, and urunc actually works perfectly on WSL2 with KVM — but there is currently zero mention of WSL2 anywhere in the documentation.
While setting up urunc on WSL2, I went through the entire process and hit multiple undocumented blockers. After resolving them, I confirmed urunc runs unikernels successfully on WSL2 with KVM support. The docs should highlight this rather than leave users guessing.
A dedicated wsl2-setup.md (or a section in the existing installation docs) would cover:
- KVM verification on WSL2: How to confirm
/dev/kvm is available (ls -la /dev/kvm) and enable nested virtualization if needed.
- Why to use nerdctl instead of Docker on WSL2: Docker Desktop on WSL2 adds its own containerd layer, making it harder to register custom runtimes. nerdctl + standalone containerd is the cleaner path.
- nerdctl + CNI plugins installation: Steps to install nerdctl and the required CNI plugins (
bridge, portmap, etc.) since they don't come bundled.
- Using overlayfs instead of devmapper: The default WSL2 kernel does not load the
dm_thin_pool module, so --snapshotter devmapper fails silently. overlayfs works out of the box.
- The working final command: A copy-paste-ready command that actually works on WSL2.
This is a positive story for the project — urunc works on WSL2, which expands the potential contributor base to Windows developers. The docs should reflect that.
System info
- Urunc version: main (HEAD)
- Arch: x86_64 (WSL2 on Windows 11, kernel 5.15+)
- VMM: QEMU / Firecracker
- Unikernel: Unikraft (nginx)
Steps to reproduce
- Be a Windows developer using WSL2.
- Follow the existing installation docs at https://urunc.io/getting-started/installation/.
- Attempt to run the quick start command.
- Hit dead ends at: Docker daemon configuration, devmapper unavailability, and nerdctl flag differences.
- No documentation exists to guide you past any of these blockers.
Description
WSL2 is how most Windows developers run Linux tooling, and urunc actually works perfectly on WSL2 with KVM — but there is currently zero mention of WSL2 anywhere in the documentation.
While setting up urunc on WSL2, I went through the entire process and hit multiple undocumented blockers. After resolving them, I confirmed urunc runs unikernels successfully on WSL2 with KVM support. The docs should highlight this rather than leave users guessing.
A dedicated
wsl2-setup.md(or a section in the existing installation docs) would cover:/dev/kvmis available (ls -la /dev/kvm) and enable nested virtualization if needed.bridge,portmap, etc.) since they don't come bundled.dm_thin_poolmodule, so--snapshotter devmapperfails silently.overlayfsworks out of the box.This is a positive story for the project — urunc works on WSL2, which expands the potential contributor base to Windows developers. The docs should reflect that.
System info
Steps to reproduce