Class WslBundleProvisioner
- Namespace
- CobaltPdf.WebKit.Infrastructure.Provisioning
- Assembly
- CobaltPDF.WebKit.dll
Provisions the Linux WebKit bundle inside a WSL distribution so renders
can run as a real Linux subprocess on a Windows dev box — no Docker
required. The tarball is downloaded on the Windows side (re-using the
regular HTTPS + SHA-256 pipeline), then extracted into the distro's
$HOME/.cache/CobaltPdfWebKit/… via wsl tar.
Fast-path: subsequent calls check for the .ready marker through
the \wsl$<distro> UNC view in a few microseconds and skip
straight to dispatch.
public sealed class WslBundleProvisioner
- Inheritance
-
WslBundleProvisioner
- Inherited Members
Constructors
WslBundleProvisioner(PoolOptions, HttpClient?)
public WslBundleProvisioner(PoolOptions options, HttpClient? httpClient = null)
Parameters
optionsPoolOptionshttpClientHttpClient
Methods
EnsureAsync(CancellationToken)
Returns a tuple of (distro, linuxBundleHome, uncBundleHome). The
LinuxBundleHome is what gets passed into wsl.exe as the path
to launch.sh; the UncBundleHome is the Windows view of the
same directory.
public Task<WslHomePaths> EnsureAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken