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:1c7e16e6b664b1272d30e5c1159163cf946874b6e8e406d0da064a6a4d9e103d
SHA256:c618ec5d1393d3859258a96d7c4d7e48cd32d10730dab74adc3547243aa64552
SHA256:bb9d20409acc83bd3ec150fa9bf9dbfc56852a29903f9a95467933f38c5a8196
SHA256:37898caffe90a016af7e31ba3060ba4c1c8cc654baaa4ef4c8c192a3142c4d8f
SHA256:758cb435562cc51b4bc51484dc57ee6b63f6a1f45038d2ec21caeeae6b6c9535
SHA256:1dd7259e7bdfde647dc8ec805631cec223efe406e6b1614aceb55b34970200c9
OCI runtime for Solo5 unikernels
A boringly simpleconfiguration format
Scheduling and executing shell jobs
SHA256:7aa883774f82aca603731bb6eb80723968006124f2e3c4942094f8b222216d5c
SHA256:69a6c4ddd1358644a64e057780f809a059292a1172f009d5771502c76e306fd1
SHA256:666e58e407925b20d6665983a1bfc54a05f18ff9a563b0cb75c860ad6aa8f1b8
SHA256:626de6764cbac5555cc6af001dff90616649603eac15dcf0da12dd207cc990f3
SHA256:1a31f395cc9b3cd3ea89fdafc6f3746b2c35fc6a457e32210a28a34c7e2b5838
SHA256:c108b93f17eca405a53ee954f2b53b4ccdc5f1041f1dddae83ec52aa1591552c
Web interface for builder
SHA256:2f4ee5dd6ef0917dc4e0c23555d75d0ca0c10f1d339b9f154905fe26c89ffb2b
SHA256:4972266f57cd9a5ae7b16dfe5c3f8e36d26ca4e81696f43135e9203f59cca873
SHA256:563fe199ef98a7785e706f26aa8d33c014ab4629533d1f63ff57dcd28a427e80
SHA256:309cd7c9bcbde57c0b2292f14bbe7e738981314053b628783f2570499dbc8281
SHA256:63efc01408877223b677ca06d0c2eb2e3ed7f328199830d7a01683cae0ea8a64
Unix command line DNS utilities
SHA256:cdd864928b87940cf1f3ff6fbdc15204cf82abe484d7150cdca4af85dd5526dc
SHA256:569cd66eaf96389274b5d7e422adce1cb3d3ef70e24ae2dd43192c491122ab57
SHA256:e97aaa2bcc924a6ce07460f439d50c76850dfb897ae9eb1aa100d9fc76324a49
SHA256:d7c1fd4ae3ffd777e8fd7e324283da20d4ee16ecf998937821de0339123e710b
Dissect OCaml compiled programs, and weight their content
SHA256:08d16d35322f35b5166667d472c7888b385e763df78c5cf5a29103a51f741425
SHA256:c1b93ab8c6782b0bdb67e723a1698c23d2ced352682b471ed54bb8380db93af4
SHA256:3809c02666b9936b6c4fb441ed771d19976591a6f0e99dadb981b8af1f873f55
SHA256:bd23a433c0035e7f7e3a31086607552c5ccd9c5d12baf59a4904ad27c2c86e20
SHA256:59fdbfa4145828ed8cb29d4e6439e4a25f5be940e1681dc7049027a64214d1e9
Graphing dependencies of opam packages
SHA256:64aaf5e13564fd5bd7d2350f9544e90e7ba93d514631a590ef1ac5a7c8cfee2d
SHA256:d81254ff8dcc190d1700010f17e8f83dd729aadc79a8585200482c3fcf37e243
SHA256:bac5482a545c23cb5af9c74d38d11bcc7651c75f62c5c20d55d8d128413008f4
SHA256:51e79751ef1de26649f1f1c31ec9d00e8b10c7251384d85768dd1c8772e25e7b
SHA256:99f885d13398446660f0878910ba34aa7cbb6ee0f73d1bf33eddb0c906d6f2c1
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:0272abe55f1edc19d641156384497c74687226da0525108fae967c16f29e41ed
SHA256:883677e0a560fc568d399d3c5c125428fb46037844495165d52ccb64848440ad
A primary DNS server unikernel that stores zone files in a remote git repository
SHA256:b8134e0b2afc786eb4786dfe5d140b45d9c0319d7b805aa525c21b783f53679c
SHA256:8c37fe2c9127778a5f1d99fc5f4be7ef5ba8def8ad2dac9bdd679dba690205c8
A secondary DNS server as unikernel
SHA256:51781122ff170e023207b2bbc31c4a8bf5049489a0c8f7efe02ca26d9628143e
SHA256:f3278d04eee56ec3d9498ea05270763d6a1cc2e9d89d0d1864eadbee2c092236
A DNS stub resolver
SHA256:1df8d77b9fb8e69189e42d475848ea4411a1986cbdf742c1345b7a79ea6bfd9d
SHA256:f5054fc7608ec1ed51c4fc51b82736ba1e2522422b65b96095008aca8394cf8b
A DNS resolver and DHCP server MirageOS unikernel
SHA256:e1f0a0cd14f8da954e58bb28447b6745a2bfff80bf58e64ea5a5b3dc992bed0e
SHA256:3e186cfb7df50066e194f3dd1f396f1fd594b7e9cc0fa1a4a7c4a5ead893beec
The famous hello world unikernel
SHA256:4db50da2ffb311d3fb245f6129dc2c20dc1f7d66b7cc425bf9d84379979c8773
SHA256:8fd2b96c1a7b313a5673ccc1aade515454c0fe0228834f49337aa106945cc9dc
A really simple unikernel with mkernel/unic/mfetch
An OpenVPN-compatible unikernel for QubesOS
SHA256:56ab42349954156b5c0185dd847385001214d1a2b77f4ec990ca5cdd204ccd49
SHA256:478058a32b737df81b71444ee9830f52d0d554a958219707d07990dc2af64c57
SHA256:1b21289b1532451f6bc9d07266a9fc7f736386a7837602661a2bf6055889dfef
An OpenVPN-compatible server unikernel.
SHA256:2974552c6653ff53c8b91700233fde17e8d03ebf025cb4661c12f29123381f2f
SHA256:51b79bbc44bb6b5fe407949dbd784e499279d08fa900f1640bac0bb385ed41c1
A DNS secondary unikernel with monitoring and mkernel
SHA256:d6e661e31ba725026862fd8bf030d884dc1252fa8c75cb047368ac0d23581253
Mollymawk is a web user interface and REST API for albatross, and a MirageOS unikernel
SHA256:db37b8d1004811e2a6d042f19d8beef0ad530b008e6b28fbc57271ec64c62723
SHA256:5f6b97e8413e4ec45f3d7c2d1c21dd05e3e82c055d8cca99bfb4f1772c5444b4
An unikernel implementing an opam-repository and archive mirror
A static website example unikernel
A TLS reverse proxy unikernel
SHA256:453feef448e9ddf069c8441d171c9d21a9484052bcf9b8d985ec6309a1a132ee
SHA256:35dd366d31c540876141710219d66cc100e8ff07440a1acf71d6dd96efa12228
A unikernel executing a traceroute
SHA256:a5d23d2bbac296fb4f4d9d5ed5e4e5eadbdf9966852875c8a099269a273a19a3
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:2014be9f7bb18e7c1089408298058c8a837a20b1d90076f89cc87f9ff305769b
SHA256:e67e288c1dc530295f970e643c2a50d97442e1ef6c7f3b40098cf9f71c485006
A primary DNS server unikernel that stores zone files in a remote git repository which reports metrics to influx
SHA256:d9c40c88e286c44c31197b41b12f7d3a95f1d7a13a011e553efba2c9eb9b6a5d
SHA256:843204e9d08e6b21cfa495961b624f1f6f5a87878ef6e0c312141ec74f870326
A secondary DNS server as unikernel which reports metrics to influx
SHA256:420881255cbfe2f992d50ad5568d9442b543ff90ed48a7eab148db2e87d70051
SHA256:e8ca6bd89c115ea9468e7440728570b23fc7c352e56addeb0696506f5529a93c
An OpenVPN-compatible router unikernel, the configuration is stored on a block device, reports metrics to influx
SHA256:2c12c43a79a389e57e128610c7b666e2f3012a88274d5689eb862e0843d4ba0c
SHA256:9d05fcb3ac819aa374a7434d18d90cd6fa3715133d1b78602770a2b16d50bc95
The unikernel serving https://retreat.mirageos.org with metrics reported to influx
SHA256:22eef3cff44ef18ad4285995ce5eaab4ab2e78923a209f9b1975eca0eceb4cfa
SHA256:2d06704546ed982f74686ff0aea5c0850f72a97d39a4facc12d01c03ef46cc32
A TLS reverse proxy unikernel, reports metrics to influx
SHA256:ef46ce68142b4923553c0ec5545cfb1ee9c5a61d3e375eec81dac32e38661b2f
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
