Installation
Pick a package
| Package | Contents |
|---|---|
Computerwelt |
shell + Python over one virtual filesystem |
Computerwelt.Emulation.Bash |
the shell alone |
Computerwelt.Emulation.Python |
the Python interpreter alone |
Reference Computerwelt when you want python available as a shell command over the same
filesystem the shell sees. Reference one of the halves when you only need that half; the joined
package brings both in as dependencies.
dotnet add package Computerwelt
Requirements
| Target framework | net10.0 |
| Native dependencies | none |
| Operating system | any the .NET runtime supports; virtual paths are POSIX everywhere |
| Extra tooling | none. There is no CPython to install and no container to start |
Verify it
using Computerwelt.Emulation.Bash;
var bash = Bash.Create();
var result = await bash.ExecAsync("echo it works");
Console.WriteLine(result.ExitCode); // 0
Console.WriteLine(result.Stdout); // it works
Bash.Create() builds a session with the default command set, the default
limits, and an empty in-memory filesystem. Nothing on the
host is reachable from it, so the first thing most applications do is give it a filesystem of their
own: see The virtual filesystem.
Read next
- Quick Start — a script, a Python program, and both together.
- The sandbox model — what the boundary is and where it sits.