Reproducible OPAM Builds
This website offers binary MirageOS unikernels and supplementary OS packages. If you want to use our binary packages and setup unikernels, follow these instructions.
The unikernels are statically linked executables where the execution target is independent of the build platform - so even if they're compiled on a FreeBSD system they can be run on a Linux, DragonFly BSD or OpenBSD host. Many are executed using a solo5 tender.
A persistent link to the latest successful build is available as /job/*jobname*/build/latest/. Each build can be reproduced with orb.
The builds are scheduled and executed daily by builder. This web interface is builder-web. Read further information on our project page.
This work has been funded by the European Union under the NGI Pointer program. Contact team AT robur.coop if you have questions or suggestions.
Execution Environments
- .hvt: hardware virtualized - requires solo5-hvt (Linux KVM, FreeBSD BHyve, OpenBSD VMM, or DragonFly BSD NVMM)
- .xen: Xen PVH virtual machine (on a Xen or QubesOS host)
Packages
Albatross - orchestrate and manage MirageOS unikernels with Solo5
SHA256:c40fc173fedd9ebf7f2df5bcbd17f5370b4cb1c9643af5237c5470b5d9c6f158
SHA256:ab4f74be970ed016f1371d6c9d3d687a44edf8654b23d3e0058464effe18fe74
SHA256:db6a8c76cbaa14755ffd04c64bb5bdd201095d76766ad1a56dd2f379210b01d3
OCI runtime for Solo5 unikernels
A boringly simpleconfiguration format
Scheduling and executing shell jobs
SHA256:54680251ba0cb8554476dc5f6c57cdbd53c67f30819ee4f08e5af73391fbcec7
SHA256:f97dac6f11a5319e2db82264ba2ea8b3d4ef4cf3943316189544de35f0225e32
SHA256:ef25214172b2fd2ca1d19c17e0fbccf0072c9a18eafaa4ec478a82158e995ccb
Web interface for builder
SHA256:e9382750a9e12af955ffba272821010f47452c1cb46bea13fcfecf5b19fc85a9
SHA256:94dd0c1dfc93cdc793d64bcb8915285af90ed51c9bebfaea3e20c859b35cf1bb
SHA256:52202fd24b2f1171f9645e19c36319fe3ea813f50bded7e6d48a81b754d6f1c4
Unix command line DNS utilities
SHA256:13a0d97ae43e904a2dc6fb86c814791f0950f11eeabbd25c3baff9b25e619daa
SHA256:e4051810f517b1df0d23022f5cc9fa9d5339f91c786f5c8aac03bd83f00af6aa
SHA256:e2d7c3e4080ff34f3199f3d9b079a4281cbe6ae008639afd91faaaad05836aea
Dissect OCaml compiled programs, and weight their content
SHA256:998a39a74a3a836234a63fbce2e51abafb02db56afa8a6f5ce63e0057f657297
SHA256:1a11b136793460d67408e631089dd7e23e2af01bcacd3f848630a76f6a45a92d
SHA256:5a95e3ea59423d3797f0f69e991eb96fc37753729e3e725574bde2ea94187ac0
Graphing dependencies of opam packages
SHA256:4fe93336714f696d79d08fd0c3ae3a844fcd5076ffa7f0380a63d5f13d472f60
SHA256:bbad4b4142bbc20eaaccd4d02f8c7df912c8c62b552c56dc00c0c84bf6f2d4c2
SHA256:6f441949aef2512d3aeab0ec495307e727585f1e8017accb4a2755f3f4ae1977
Check opam package reproducibility
Solo5 sandboxed execution environment
Unikernels
A CalDAV unikernel (RFC 4791) using a remote git repository for data storage
An unikernel that provides an opam-repository, and is a conex snapshot and timestamp service
A DNS secondary server that pushes certificates signed by let's encrypt when certificate signing requests without a valid certificate are in the zone (using TLSA records)
SHA256:7f73c32bdc913bd7f30553d557ee2bb856d82e0c2646f577647e9f32968d8ff4
A primary DNS server unikernel that stores zone files in a remote git repository
SHA256:e3994888524fb3bd65bafb8a4a541e78134ce5d7a6e65cf40b042fc3c9f1c34b
A secondary DNS server as unikernel
SHA256:131d120159ebb1ee06acedb55bbd01ff8e79d64f1577231cad850023c92e2eae
A DNS stub resolver
SHA256:dd035bb6d054799c3b87e1e02bcac66c0f4da1d1dc9df689e9144f5f87c264fb
A DNS resolver and DHCP server MirageOS unikernel
SHA256:6156b7b9d697b1e0cfded01be31c277b444a28b448f66e03d7b748680e8f42f7
The famous hello world unikernel
SHA256:5633813111946656d7dbf51a68dc0e3058a516e22a3a889d14f5981002fbfda5
An OpenVPN-compatible server unikernel.
SHA256:ea71cc036b9856c5e134f3aeaededee4bc5ea8cd4a94a6efbb09b610f89985db
An unikernel implementing an opam-repository and archive mirror
A static website example unikernel
A TLS reverse proxy unikernel
SHA256:26ead2cc5a649c6c5b2f3a645bab91ac64864efef0120d677c37c24762670d01
A unikernel executing a traceroute
SHA256:fb52fcc053243d9d8f015658e0c754550077b5e91f9590fbb5cc92a5de72f21d
A web server unikernel which content is stored in a remote git repository, TLS certificate via ALPN let's encrypt challenge
Unikernels (with metrics reported to Influx)
A CalDAV unikernel (RFC 4791) using a remote git repository for data storage, reports metrics to influx and certificate retrieval via DNS and let's encrypt
A CalDAV unikernel (RFC 4791) using a remote git repository for data storage, reports metrics to influx
A DNS secondary server that pushes certificates signed by let's encrypt when certificate signing requests without a valid certificate are in the zone (using TLSA records), reports metrics to influx
SHA256:99b8881efab60da6c5c0de6c2180831ed610adb0cbe47a58c6c5d7a4e825e2cb
A primary DNS server unikernel that stores zone files in a remote git repository which reports metrics to influx
SHA256:50c1c076602e28d3fad985e1b9a5a007777b3a8542c52122684b29f5a34e55d0
A secondary DNS server as unikernel which reports metrics to influx
SHA256:f7549f23669bb13e3b34e4392c062207c3c920741b61136429aa49e6b8424ce2
An OpenVPN-compatible router unikernel, the configuration is stored on a block device, reports metrics to influx
SHA256:ff067bba8c1a06b47734c2f9b6c45a7d2c5e163ddd7020e8cba7ae4ff86f2d2e
The unikernel serving https://retreat.mirageos.org with metrics reported to influx
A TLS reverse proxy unikernel, reports metrics to influx
SHA256:60c652c84404dd175a931538f52c6864c895b316217b989358a2658d3b84c0f0
A web server unikernel which content is stored in a remote git repository, TLS certificate via ALPN let's encrypt challenge, which reports metrics to influx
