A deliberately limited Netcat implementation (UDP only).
An exercise in building a network enabled systems program / unikernel with OCaml / MirageOS.
With minimal network related dependencies included the resulting binary has a size of ~3.3MB (on MacOS).
This project is based on the highly instructional "Hello MirageOS World" guide and mirage-skeleton code examples.
You can also watch my talk at the first Vienna ReasonML meetup.
Check the official MirageOS installation guide.
Configure (e.g. MacOS):
mirage configure -t macosx
Get and build dependencies:
make depend
Build binary:
make
On MacOS:
./chill_netcat
On Xen (not yet..)