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:4158ec89e4ede1c2b84094093748efecde8bfb6b83dc1beedb3d151797347d97
SHA256:f679705f16bd95ab0f68723a73a9bc450cd73a2b18f8c46b369290b5f6514367
SHA256:37898caffe90a016af7e31ba3060ba4c1c8cc654baaa4ef4c8c192a3142c4d8f
SHA256:758cb435562cc51b4bc51484dc57ee6b63f6a1f45038d2ec21caeeae6b6c9535
SHA256:6e0940391b55b1d0d75c9fee5bb23e534f17a95136dc0545719eceb34e18de4d
OCI runtime for Solo5 unikernels
A boringly simpleconfiguration format
Scheduling and executing shell jobs
SHA256:7aa883774f82aca603731bb6eb80723968006124f2e3c4942094f8b222216d5c
SHA256:7ce7c99b4d96fbf05de62c54a8fc1e888181c5966370da06d712e07526a646cb
SHA256:aebc87907f300a87345a75f437603989933c312e7b9f0fb2061aa82139112730
SHA256:626de6764cbac5555cc6af001dff90616649603eac15dcf0da12dd207cc990f3
SHA256:1a31f395cc9b3cd3ea89fdafc6f3746b2c35fc6a457e32210a28a34c7e2b5838
SHA256:1f1ed9a0bb2815fed544e235c98ae90a1cd1de1aba4a302365a8e5931337eca5
Web interface for builder
SHA256:2f4ee5dd6ef0917dc4e0c23555d75d0ca0c10f1d339b9f154905fe26c89ffb2b
SHA256:97a14d28865c7c0d45dfda61b7a87bad4a2e0f581a9f76087a407c72b7a45b17
SHA256:ac08d01f97523339198830b09a1700f0a06287a8a021bd25eca8d2aaf6d699b2
SHA256:309cd7c9bcbde57c0b2292f14bbe7e738981314053b628783f2570499dbc8281
SHA256:855498f09835e89c7b8201d66c191754c5e050addffa3fa7a939fdd6338b024b
Unix command line DNS utilities
SHA256:ad9b558ceb897f9322f1842d59f3e2aadee1d0267affd0657ef6a1ad861ccea5
SHA256:062a0cb927c01679ee4d4726e6aa748f93a838744dc0c61cc0e539509e6650dc
SHA256:e97aaa2bcc924a6ce07460f439d50c76850dfb897ae9eb1aa100d9fc76324a49
SHA256:2cb4bdad16a0f00cd84e234275d0b78e0bcb1796d0c2b4912e004dfb6b8b00e9
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:27c835944a56cad29cbefb20b3f37e8bc2147d2b5dd98a6a9a9cda7e2fb40dfc
SHA256:38674a5d0c83ef31118bdf173a35ec4a5214d0d5ddfb43606aa7ff81ea10f4a7
SHA256:51e79751ef1de26649f1f1c31ec9d00e8b10c7251384d85768dd1c8772e25e7b
SHA256:945dfc045d959ac0fb0fd87b2ecd5c12b6fbf3ddc9eda8a41f0dad90d1d7075c
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:2bac3be898d6040cd67ad855cd929407f0fe84787463eee806ae98eabaf599f6
A primary DNS server unikernel that stores zone files in a remote git repository
SHA256:b8134e0b2afc786eb4786dfe5d140b45d9c0319d7b805aa525c21b783f53679c
SHA256:fe5cd60590e2748f4c51739637973b8fc76ffa98c3f063c13ed7f62a68d9cf89
A secondary DNS server as unikernel
SHA256:51781122ff170e023207b2bbc31c4a8bf5049489a0c8f7efe02ca26d9628143e
SHA256:4692a36cfeb5495a5feac0f75d4ec08b3af9eda22ac315b17557f52e5f6887b0
A DNS stub resolver
SHA256:1df8d77b9fb8e69189e42d475848ea4411a1986cbdf742c1345b7a79ea6bfd9d
SHA256:105ceb117d20aee1227324156ea47a061f8f51c5f1da2aa694dbac146c5e4253
A DNS resolver and DHCP server MirageOS unikernel
SHA256:e1f0a0cd14f8da954e58bb28447b6745a2bfff80bf58e64ea5a5b3dc992bed0e
SHA256:8751d21fac3894bba410b4f9b9131363dcac4fb5f28e2a3f16d6c71b7589da84
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:ebff52f47e5999edae6d039ab3e06100265a21ab5a2323da2c64acf02e274621
A DNS secondary unikernel with monitoring and mkernel
SHA256:16fb53ef4c93c9dae2d8533bb5a74b2517da1f4496727ffb85dc3f3f044db93a
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:34160a6ae1074ec33916c0b5c5eaec2c473be1d39bebc78329ea65f9832d5536
A unikernel executing a traceroute
SHA256:a5d23d2bbac296fb4f4d9d5ed5e4e5eadbdf9966852875c8a099269a273a19a3
SHA256:aac7b764ff5a24d7f52f0e1c965a51118b101785cbd541a513c0c9477375dbc1
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:997836fd05a348aff5ba05a0979833e249a7072112477344a37a0e4fa933a7d9
A primary DNS server unikernel that stores zone files in a remote git repository which reports metrics to influx
SHA256:d9c40c88e286c44c31197b41b12f7d3a95f1d7a13a011e553efba2c9eb9b6a5d
SHA256:64b588c7d107a8cecfca6f5fcaeb4a736ad34d59d22b2014c41341a7a6b4b1b2
A secondary DNS server as unikernel which reports metrics to influx
SHA256:420881255cbfe2f992d50ad5568d9442b543ff90ed48a7eab148db2e87d70051
SHA256:cdbde175eb72261b9b83843c3460d5320e0bf3568467c70f7b3c4f501ee7ad32
An OpenVPN-compatible router unikernel, the configuration is stored on a block device, reports metrics to influx
SHA256:2c12c43a79a389e57e128610c7b666e2f3012a88274d5689eb862e0843d4ba0c
SHA256:c0b35bcfb412a5265f4ddd0d1f9285cdebfda909d46ee86c522a0b62cfc7fd57
The unikernel serving https://retreat.mirageos.org with metrics reported to influx
SHA256:22eef3cff44ef18ad4285995ce5eaab4ab2e78923a209f9b1975eca0eceb4cfa
SHA256:423364105f4cad8a11239ef09d94be8ffb671ab302215514400e8f3a94ec5eee
A TLS reverse proxy unikernel, reports metrics to influx
SHA256:ef46ce68142b4923553c0ec5545cfb1ee9c5a61d3e375eec81dac32e38661b2f
SHA256:bd01d62b67cd27129249d5e1714e470ed5b5928444c9f1fca18883ea9d6aef52
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
