Popular: Data updated November 10, 2026

Categories

Internet1,380
Communication324
Audio & video915
Graphics & design554
Office & productivity1,139
Developer tools3,194
AI tools559
Security & privacy396
System tools3,164
Games534
Education & science240
Network & IT290

Skrog: all versions and old releases

Run the upstream Docker Engine on Windows via WSL2, with no licence fees.

3 versions of Skrog are listed here, from September 22, 2026 to the current 0.11.0. Each one links to the publisher’s own installer files.

2026: 3 3 26
VersionDateSizeFiles
0.11.0Latest October 26, 2026 — 64-bit ZIPARM64 ZIP
Release notes
Each project can have its own engine: skrog target create installs a second,
fully isolated one, and skrog use switches docker between them. The default
engine moves to 29.9.2, with Go and containerd security fixes. skrog compact
works again on WSL 3.0, and --distro can no longer act on the wrong engine.
Security
- The default engine is 29.9.2, built with Go 1.26.10, with containerd 2.3.7.
Go 1.26.10 is the whole of moby 29.9.2: it rejects TLS chains through eight eMudhra
intermediates whose keys were compromised (CVE-2026-111943), so a pull from a registry
that still chains through one now fails verification instead of succeeding. containerd
moves from 2.3.6 to 2.3.7, the patch on the same line, for CVE-2026-95839 and
GHSA-8647-2jxj-p2rc (a crafted image manifest, or a registry's Content-Length, could
crash containerd) and GHSA-5p7c-hggf-c748 (a CRI-plugin mount leak). moby 29.9.1 took
containerd 2.4.2 for the first two; staying on 2.3 gets them without a minor-version
move. runc and BuildKit are unchanged. Existing installs
move with skrog engine upgrade; 29.9.0 stays in the manifest, so skrog engine rollback returns to it.

Fixed
- skrog compact works on WSL 3.0 (#560).
It failed twice over. WSL 3.0's wsl --exec does not find tools in /sbin by name, so
the first step failed with execvpe(fstrim) failed; it now runs /sbin/fstrim. And the
wait for WSL to release the disk ended at once, because opening the disk now succeeds
while the utility VM still holds it, so the compaction failed with "being used by another
process". It now retries the compaction itself until the disk is released (about a
minute) or --wait runs out. compact also no longer boots an engine that was already
stopped just to stop it, which with --no-trim saves that minute.
- skrog compact says up front when Windows cannot compact the disk (#565).
Windows will not compact a sparse, compressed or encrypted .vhdx, and WSL 3.0.2+ makes
a disk sparse (wsl --manage --set-sparse true) without any unsafe flag. compact
trimmed and stopped the engine, then failed with Windows' raw "virtual disk system
limitation" error. It now checks before anything is stopped, --dry-run included, names
the cause, and gives the remedy (for sparse: --set-sparse false with WSL idle).
- --distro no longer acts on a different engine (#561).
Wherever an install exists, its manifest decided the distro and the flag was silently
ignored: skrog compact --distro X compacted the installed engine instead. compact,
enable-gpu, relocate, serve, proxy, supervise and uninstall now refuse a
--distro that differs from the installed one (exit 2) and point at --state-dir, which
is how another install is reached. The installed name itself, in any case, is accepted.
- wsl.auto-memory-reclaim now takes effect (#550).
skrog wsl-config apply wrote autoMemoryReclaim under [wsl2], but WSL reads it only
as experimental.autoMemoryReclaim: it ignored the line and printed Unknown key 'wsl2.autoMemoryReclaim' when the VM started, so the setting never worked. It is now
written under [experimental], and a line an earlier release left under [wsl2] is
moved by the next apply — the diff shows the move before anything is written. skrog wsl-config and skrog top no longer report the ignored line as in effect.
wsl-config --json pending changes gain section, and moved_from for a move.
- skrog upgrade --apply under winget or scoop does what its plan says (#545).
It listed the app step, upgraded the engine and CLI, and only then refused the app
because a package manager owns it, exiting 1 after doing everything else. Ownership is
now decided before the plan is shown: the app step appears under "will not run" with the
manager's command, the rest is applied, and the exit is 0. With only the app behind it
prints the command without asking. --force still replaces the binary.

Added
- An engine per project (#539).
skrog target create <name> installs a second, fully independent engine: its own WSL
distro and virtual disk, supervisor, pi
0.10.0 October 12, 2026 — 64-bit ZIPARM64 ZIP
0.8.0 September 22, 2026 — 64-bit ZIPARM64 ZIP

Most popular in Containers & DevOps

See all
  1. HelmThe Package Manager for Kubernetes
  2. Docker DesktopAn application for macOS and Windows machines for the building and sharing of containerised applications.
  3. PulumiPulumi CLI for managing modern infrastructure as code
  4. Serverless FrameworkBuild applications on AWS Lambda and other next-gen cloud services, that auto-scale and only charge you when they run.
  5. Kubernetes - Minikube - A Local Kubernetes Development Environmentminikube quickly sets up a local Kubernetes cluster on macOS, Linux, and Windows. We proudly focus on helping application developers and new Kubernetes users.
  6. Puppet AgentPuppet is a tool that helps you manage and automate the configuration of servers.
  7. Docker Composedocker-compose plugin for docker cli
  8. k9sKubernetes CLI To Manage Your Clusters In Style!
  9. HashiCorp ConsulA distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
  10. actRun your GitHub Actions locally!

Tags

Share