Currently, the services in ZeroInstall.Services.Executors only support launching applications directly on the OS 0install is running on.
We should generalize this, so that it can also orchestrate executing applications inside environments like:
- Docker containers (running Linux binaries on Windows and Linux)
- Wine (running Windows binaries on Linux)
- WSL (running Linux binaries on Windows)
- Windows Sandbox (running Windows binaries on Windows)
For each of these cases it will be necessary to:
- map cached implementation directories into the target system
- handle bindings
- for
EnvironmentBindings, paths need to be translated and env vars need to be applied inside the target system
- for
ExecutableInVars and ExecutableInPaths, stub executables need to be generated for the target OS and mapped in
Currently, the services in
ZeroInstall.Services.Executorsonly support launching applications directly on the OS 0install is running on.We should generalize this, so that it can also orchestrate executing applications inside environments like:
For each of these cases it will be necessary to:
EnvironmentBindings, paths need to be translated and env vars need to be applied inside the target systemExecutableInVars andExecutableInPaths, stub executables need to be generated for the target OS and mapped in