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:2d6aa40a2ad21813dc6a224f6ece60a9ed82a85021038b9acb69c772476c6827
SHA256:6cabeb6a5b0f418cdf0e2889ec4279707f2228673601f71456b367e53cd8638d
SHA256:e3c85bb289cf3e6f2ca5e70be000544c387978a58e908e95f7056183271f0ed4
OCI runtime for Solo5 unikernels
A boringly simpleconfiguration format
Scheduling and executing shell jobs
SHA256:53ac064ec6a522390b485347342427af856ce7386babed0622dd4f8b7ca54e55
SHA256:11c432f2feb606c2d2e74ba0a049ade839e13a94c2cfc433d51303adc68ac991
SHA256:d9a098ff11253559f553b7e58f91646b950f61f21b02c29d13fc885d5f90ec0f
Web interface for builder
SHA256:af040264f10ed8f454942e57509e6fbc9077244a9f4ee6ad5c2887d2048bc09a
SHA256:751e96bb3989202b5663e98e6ee28ebdf4a91a42cc566a80d530552ea638a79e
SHA256:b76d2d5b22e5ed4c55f1c9ce2333b8afa8fe38a2094c1aefa4edbdbf170cc487
Unix command line DNS utilities
SHA256:d3c5b95f2fe2527254cc59fabafbaed8b58c06387548be628cd5ef938f8c085f
SHA256:0678d6811677b8d7e8135e7d3b5028f63573aa2b412d2d1bab2057910217b14a
SHA256:4a848a8a9e6caaf9822c808484c8f5433f33e3decc5800b5bd31f6cf50a8da3d
Dissect OCaml compiled programs, and weight their content
SHA256:b54ce8ddedb4ac3ef16d37c4807f8a3cafaa88ab431b9282c98f7a83b15c7201
SHA256:bc6a93288467f9a7ab9b7687bc15f96a5801305a092ea5b527c5fc200a51475f
SHA256:760e9d418d8c52e5d916c4c06b11ed671a2fb4afd862e357c092d18daec5f921
Graphing dependencies of opam packages
SHA256:37015f235c8a91a9077b9875f5f38ec9ddad92ef972115e4be7778ee4761375c
SHA256:114361d692c3323086950435f0a91812bf1162fa3ec8c824fd94da64b89fe501
SHA256:f8816ab41a3469e9cad9fe4625e15e8c79da87df402c826d4564b958f91e931a
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:8ab3beb1eb642e8bbf6203f52b50bcce527e627474901d6cd2fff569d8f50e69
A primary DNS server unikernel that stores zone files in a remote git repository
SHA256:7c8e47c92f810c15c9d810cdfc3e867520023a5f3def6cd8cb2801b0c0444b41
A secondary DNS server as unikernel
SHA256:6ce5024332e7cc54a76cff09e957065aba908920e637c79ab999e1739ba669a4
A DNS stub resolver
SHA256:2d530500441308a45086bdd0bbdb12a83b87fd71ab83671c03745a005e0a5d01
A DNS resolver and DHCP server MirageOS unikernel
SHA256:cc7ebb242c1f3058f27c3911a88701fb2eafbd24b2e39c2956ccbcc205bbcc3f
A really simple unikernel with mkernel/unic/mfetch
An OpenVPN-compatible server unikernel.
SHA256:927025d6b0b523b8a5afb21af20c2c1a8aa803bd80ef559075afcb18721fb674
A DNS secondary unikernel with monitoring and mkernel
SHA256:59992a20ecdf143b3ab3e618020bd567de5e05ee11c693a8adc47d7eea5b3f90
An unikernel implementing an opam-repository and archive mirror
A static website example unikernel
A TLS reverse proxy unikernel
SHA256:c133069fc3ea1b153bdd397b4236ed68b3a3cff82dc896814ed0b7b623ec7a16
A unikernel executing a traceroute
SHA256:c0c8f785eae6fe2508c3a34aa0e8db8d54e922103a2d8177fd258dfa17336644
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:acf3bb1be29fb9c6546810a6cb7b422c83bd5048edc28198ddecd2730e27c1fb
A primary DNS server unikernel that stores zone files in a remote git repository which reports metrics to influx
SHA256:02004c8b2f98c0dfe0a62aeb9929b303b778c08cd66b9cf9a6c10d02171b4ebe
A secondary DNS server as unikernel which reports metrics to influx
SHA256:964bb4e7625686e4c2c1de50ba2880935ded2793b21c8accd7c7c9f104c7b890
An OpenVPN-compatible router unikernel, the configuration is stored on a block device, reports metrics to influx
SHA256:b4b1dec3842d547fc8caf9164f291eaca7f32fb82e4d75cfc506d4f5c66c5b02
Mollymawk is a web user interface and REST API for albatross, and a MirageOS unikernel
SHA256:9596a497319e5af84c1121956f3a3b6581d98bb10ac08a43b519faa72c652d6e
The unikernel serving https://retreat.mirageos.org with metrics reported to influx
SHA256:dcf78d8e6ae139a1381eab8a57600c91c36eb2c57ebd643a1c1045b6f3405048
A TLS reverse proxy unikernel, reports metrics to influx
SHA256:be18b9064f61fa73840e6c2a1e711f6b3bf8f878e4c39c910642175a454dd831
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
