Pre-built WSL2 images for CDC developers. Common tools come pre-installed via mise, and enterprise certificates are already trusted so you don't have to fight with SSL certificate issues.
If wsl is already installed, you may skip these prerequisites.
Running wsl --install requires a Windows elevated privilege account. See Prerequisites for how to request one.
-
Open PowerShell with your normal account and confirm WSL2 is ready by running
wsl. If it isn't, see Prerequisites for how to request one. -
Download the
.wslfile for your preferred distro from the latest release:File Distro ubuntu-24.04-cdc.wslUbuntu 24.04 fedora-43-cdc.wslFedora 43 -
Install it:
wsl --install --from-file C:\Users\<username>\Downloads\ubuntu-24.04-cdc.wsl
Or double-click the
.wslfile in File Explorer. -
Launch the distro. On first boot it will automatically create your user account and configure DNS.
Tools are managed by mise and configured in /etc/mise/config.toml. To see what's installed:
mise listTo upgrade everything:
mise upgradeTo install a tool or change a version, edit /etc/mise/config.toml or your personal ~/.config/mise/config.toml, then run mise upgrade.
Find the full list of tools and their versions in the config.toml file.
| Category | Tools |
|---|---|
| Languages | Python 3.13, Node.js, Go, Java, R, Rust |
| Cloud | AWS CLI, Azure CLI, kubectl, Helm, Terraform |
| Build | Gradle, Maven |
| Linting | shellcheck, ruff, black, actionlint, semgrep, checkov |
| Utilities | ripgrep, grype, pre-commit, poetry, uv, pipx |
Some tools are excluded from the base image due to a 2 GB GitHub release limit. All of them are already listed in /etc/mise/config.toml, so running mise upgrade should install everything. If you run into ordering or timeout issues (particularly with Rust behind Zscaler), use the helper script instead:
bash /opt/scripts/add-extra-tools.shThe script installs foundational tools (Node.js, Java, Go, R, Rust) in the correct order before running mise upgrade for the rest.
Build a specific distro image locally:
bash build.sh ubuntu # builds ubuntu-24.04-cdc
bash build.sh fedora # builds fedora-43-cdcRun a quick test against the built image:
podman run -t ubuntu-24.04-cdc bash -c "bash /opt/scripts/check-google.sh"To debug an image interactively, build it and exec in:
bash build.sh fedora && bash test.sh
podman exec -it fedora-43-cdc-test bashNote that startup sequences like DNS setup (config/run-once.service) only run under WSL, so testing those requires a real Windows install.
For a quick build-test-cleanup loop:
bash build.sh fedora && bash test.sh fedora && bash cleanup.sh fedora- Prerequisites on elevated privilege account, WSL2 setup
- First-Time Setup accounts for user creation, DNS configuration
- WSL Tips and Troubleshooting gives us common commands, vmcompute crash fix
- Releases shows how versioning and CI releases work