Reproducible builds and infrastructure

Session information has not yet been published for this event.


One Line Summary

You already use version control for your software, but what about your build dependencies and your system infrastructures? Come hear about Apters, our solution for reproducible builds and infrastructures.


If your biggest customer reported a bug in a three-year-old version of your product, could you even compile it today? Do you know what build environment you used, and will the build environment you have today work? Could you say with confidence that you didn’t change anything outside of the bugfix?

How quickly could you split the functions of one server across several? Or duplicate your data center if it went up in smoke?

Do you know what toolchains can successfully build a 2.6.32 kernel? The latest binutils won’t. How easily can you dig up a suitable toolchain on a modern system?

We’re building Apters , a set of tools and services to let you define and version your software builds and system infrastructures. We think software assembly and system assembly require fundamentally the same processes, just at different scales. We want to track everything that goes into a build: source code and build dependencies.

Various projects have written parts of this, in the form of build daemons or package managers, but those tools don’t consistently provide versioning, reproducibility, or generality.

In this lightning talk, we’ll give an overview of the unsolved problems in build and release processes, explain what makes them so challenging, and show how Apters solves them.


version control, versioning, git, build, test, reproducible, package management, infrastructure, dependencies

Presentation Materials



  • Jamey-is-climbing-the-halls


    Jamey Sharp was placed on Ritalin, briefly, in fifth grade. His interests and activities have been varied ever since. Today his day job involves a computer test for attention deficit disorder, but his biggest projects have been the Portland State Aerospace Society, a student rocketry club at Portland State University; XCB, a new low-level binding to the X protocol, in the process of replacing Xlib; and Serialist, because his other projects didn’t leave him enough time to read his favorite webcomics without tool support.

    Jamey’s interests span computer science fields including cryptography, combinatorial search, compilers, and computational complexity; systems-level programming, such as file format and network protocol implementations, Linux kernel development, and boot-loader hacking; computer architecture and its impact on software design; and functional programming, preferably in Haskell.

  • Face


    Josh Triplett is a PhD student at Portland State University and a Free and Open Source Software hacker. Josh researches relativistic programming, advanced synchronization techniques for highly parallel systems. Currently, Josh wants to make it easier to assemble software and systems from individual components, with versioning and reproducibility, by building Apters. In his “free time”, Josh builds and launches Linux-powered rockets with the Portland State Aerospace Society, and hacks on numerous other projects . Lately, Josh does a lot of his hacking in Haskell.