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:d5f67c9123bbbfcb471a7da81cabb1c1717fc9ae0a17d551b2dc4b73f8facdab
SHA256:6dbe5086fc95db27e01162adedec8f83c07f7e9a39eed9d7e5215426aeacd5f7
SHA256:351cd5b77ebd480bfb5714bbf7899ded2906e0f6ca03574dff749caf7e37959d
OCI runtime for Solo5 unikernels
A boringly simpleconfiguration format
Scheduling and executing shell jobs
SHA256:69a6c4ddd1358644a64e057780f809a059292a1172f009d5771502c76e306fd1
SHA256:666e58e407925b20d6665983a1bfc54a05f18ff9a563b0cb75c860ad6aa8f1b8
SHA256:c108b93f17eca405a53ee954f2b53b4ccdc5f1041f1dddae83ec52aa1591552c
Web interface for builder
SHA256:8b8a8c6c218a2e2a58325d2e25d3c6f6e4f318122d0953b17aba106b94e57e79
SHA256:9720e850d99c2d93ba35f7e24340d84a3704e0141aa8992e0942e21fe63115e9
SHA256:f3842cfeb1d498727112fac9484547b585ecced33355b07148bb4470b26bfcc5
Unix command line DNS utilities
SHA256:cdd864928b87940cf1f3ff6fbdc15204cf82abe484d7150cdca4af85dd5526dc
SHA256:569cd66eaf96389274b5d7e422adce1cb3d3ef70e24ae2dd43192c491122ab57
SHA256:d7c1fd4ae3ffd777e8fd7e324283da20d4ee16ecf998937821de0339123e710b
Dissect OCaml compiled programs, and weight their content
SHA256:c1b93ab8c6782b0bdb67e723a1698c23d2ced352682b471ed54bb8380db93af4
SHA256:3809c02666b9936b6c4fb441ed771d19976591a6f0e99dadb981b8af1f873f55
SHA256:59fdbfa4145828ed8cb29d4e6439e4a25f5be940e1681dc7049027a64214d1e9
Graphing dependencies of opam packages
SHA256:d81254ff8dcc190d1700010f17e8f83dd729aadc79a8585200482c3fcf37e243
SHA256:bac5482a545c23cb5af9c74d38d11bcc7651c75f62c5c20d55d8d128413008f4
SHA256:68065446e554acafb255cef34250cb2818326f4e36d30f130c175c6214be1528
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:883677e0a560fc568d399d3c5c125428fb46037844495165d52ccb64848440ad
A primary DNS server unikernel that stores zone files in a remote git repository
SHA256:8c37fe2c9127778a5f1d99fc5f4be7ef5ba8def8ad2dac9bdd679dba690205c8
A secondary DNS server as unikernel
SHA256:f3278d04eee56ec3d9498ea05270763d6a1cc2e9d89d0d1864eadbee2c092236
A DNS stub resolver
SHA256:f5054fc7608ec1ed51c4fc51b82736ba1e2522422b65b96095008aca8394cf8b
A DNS resolver and DHCP server MirageOS unikernel
SHA256:3e186cfb7df50066e194f3dd1f396f1fd594b7e9cc0fa1a4a7c4a5ead893beec
A really simple unikernel with mkernel/unic/mfetch
An OpenVPN-compatible server unikernel.
SHA256:51b79bbc44bb6b5fe407949dbd784e499279d08fa900f1640bac0bb385ed41c1
A DNS secondary unikernel with monitoring and mkernel
SHA256:83e200ac74bb92f5f1365709fd12e552009b6caba621b0641b3b984161206581
An unikernel implementing an opam-repository and archive mirror
A static website example unikernel
A TLS reverse proxy unikernel
SHA256:35dd366d31c540876141710219d66cc100e8ff07440a1acf71d6dd96efa12228
A unikernel executing a traceroute
SHA256:b57baf4e1f7640c07e9e1eb1a97a044c446fc93d2d29d36f8a0d7f617ac6c700
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:e67e288c1dc530295f970e643c2a50d97442e1ef6c7f3b40098cf9f71c485006
A primary DNS server unikernel that stores zone files in a remote git repository which reports metrics to influx
SHA256:843204e9d08e6b21cfa495961b624f1f6f5a87878ef6e0c312141ec74f870326
A secondary DNS server as unikernel which reports metrics to influx
SHA256:e8ca6bd89c115ea9468e7440728570b23fc7c352e56addeb0696506f5529a93c
An OpenVPN-compatible router unikernel, the configuration is stored on a block device, reports metrics to influx
SHA256:9d05fcb3ac819aa374a7434d18d90cd6fa3715133d1b78602770a2b16d50bc95
Mollymawk is a web user interface and REST API for albatross, and a MirageOS unikernel
SHA256:569576639954ffc059b68a9a89164a09bc4429b2c16c4f2d964647d4953321db
The unikernel serving https://retreat.mirageos.org with metrics reported to influx
SHA256:2d06704546ed982f74686ff0aea5c0850f72a97d39a4facc12d01c03ef46cc32
A TLS reverse proxy unikernel, reports metrics to influx
SHA256:f79a180831aa5f7ea546ff64a1c3a3bbea52b69cae67f889cf4d4315817d9119
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
