I have started doing binary builds, for Linux x86_64, using Docker. There are currently only a few packages, although several builds for each, will add more.
How does this differ from rumprun-packages-wip? These are actual builds, with scripts, not instructions. How does this differ from packages? They exist now, they build binaries, like packages, but the build processes may be a bit ad hoc, ie they will download git repos or tarballs during the build process rather than having a proper source repo. The end build currently has all the source and much of the intermediate build stages in, so they are overly large, although that can be useful for debugging. The naming needs fixing. What use are these? You can view them as a prototype for packaging, or other build systems. The initial rationale was to have easy to install builds of binaries without someone having to go through a sparsely documented build process, plus to do automated testing on more complex binaries than the tests in the repos. I haven't automated testing yet, partly due to complexities of setting up the networking for tests in an automated way, but I am working on this. What architectures are supported? Everything is built for Linux/x86_64. Currently 32 bit and 64 bit are not co-installable easily, and it adds a lot of complexity, plus Docker is very Linux/x86_64 centric so that probably won't change. What is there? Builds are layered between the base toolchains, applications, then application+config, with automatic triggers to rebuild images when the dependencies are updated. Base toolchain builds: justincormack/frankenlibc - base build for userspace justincormack/rumprun - base build for xen, hw (NB currently built off a fork, so not updated on every commit, updated 18 June) Application builds: off frankenlibc: justincormack/rump-nginx - Nginx justincormack/rump-nginx-lua - Nginx + Nginx Lua module justincormack/rump-lua - Lua off rumprun: justincormack/rumprun-nginx-lua - Nginx + Nginx Lua module, rumpbaked for for xen, qemu, kvm Application + config builds: These add config files, and ideally will be able to run some tests but at the moment running the tests is manual - some repos have some scripts, but it is still work in progress justincormack/rump-nginx-lua-test - this can be run from docker with the right network setup justincormack/rumprunxen-nginx-lua-test justincormack/rumprunqemu-nginx-lua-test If you want to poke around inside these, install docker (apt-get install docker.io), and add yourself to docker group, then you can eg do docker run -i -t justincormack/rumprunqemu-nginx-lua-test /bin/sh Note the download will be pretty slow the first time as it has all the build stuff there, but much of this is shared between the images, so the next one should be faster. That will give you a shell inside a system image. Binaries will be in /usr/local/bin and build trees in /usr/src You can browse everything on https://registry.hub.docker.com/repos/justincormack/ and find the repos on https://github.com/justincormack?tab=repositories - check the Dockerfile for the build instructions. You can't currently download old builds as they are not tagged, I might fix this at some point, but it probably means changing how the builds happen.
