Use this advanced route when maintaining the reproducible Emacsvox Windows bundle or its optional engine integrations. Ordinary WSL2 users should use the pre-built release in Install An Omnivox Windows Release Under WSL2. This target builds from source and currently produces an x86-64 Windows runtime.
Before running it, install or configure all of the following:
powershell.exe and wslpath must run directly from the WSL shell, and the
Windows user’s LocalAppData directory must be writable.
docker without adding sudo because
the Make target invokes it directly. Docker Desktop with WSL integration is
one way to provide this, but it is not the only possible Docker setup.
dotnet SDK. Visual Studio is not
required.
git, GNU make, curl, unzip, sha256sum, and the normal GNU
shell utilities supplied by a standard distribution. The build also uses
commands such as awk, cmp, find, readlink, sed, sort, and
xargs.
emacsvox and omnivox, although maintainers can set
OMNIVOX_DIR to an alternate Omnivox checkout. Both need enough free space
for the Docker image, native and cross-compiled build products, and caches.
You do not need to install Rust, MinGW, CMake, Clang, libclang, eSpeak NG, Roslyn, Visual Studio, or the .NET reference assemblies in WSL. The target pins or builds those inside its controlled toolchain. Eloquence and DECtalk runtimes are optional and are not needed for the normal Windows WinRT voice.
The quickest prerequisite check is:
cd /path/to/emacsvox make verify-windows-omnivox-toolchain
This is more than a presence check: on its first run it downloads the pinned .NET compiler packages, builds the pinned Docker image, and verifies the exact Rust, MinGW, libclang, Roslyn, and .NET Framework versions. A failure names the missing host command or unsupported framework before the full Omnivox build is attempted.
Clone Omnivox beside Emacsvox as shown in the source-build section. Then, from a clean Emacsvox checkout whose sibling Omnivox checkout also has no tracked changes, run:
cd /path/to/emacsvox make windows-omnivox
This is the reproducible release path. It builds and verifies a pinned
Windows-GNU executable and stages a content-addressed runtime beneath
servers/omnivox-bin. It also copies the runnable payload to a
Windows-local directory so native voice and eSpeak data discovery do not pay
the WSL filesystem cost. Optional Eloquence and DECtalk runtimes are not
downloaded by this target or required for normal WinRT speech.
Maintainers testing tracked changes should use the development route in Integration Maintenance rather than weakening the clean-release guard.