Reproducible Builds summit report

The event was organized without a fixed schedule, rather the
organizers implemented a scheme wherein participants would form around
topics that interested them.

Most sessions had somebody take notes, the reports are going to be
published in a “Reports” section on the event page soon:
https://reproducible-builds.org/events/paris2018/

Here I wrote down some interesting one-on-one conversations I had over
the three days.

2018-12-11

2018-12-12

  • Hacksession: Package Matrix for Tools — reproducible-builds.org
    I hosted two hacking sessions to show & improve the distribution of
    Rep. Builds tools on various distros. Writeup here:
    Riseup Pad
    (and later in the agenda)
  • Typesystem for JSON
    Met a person who is writing a typesystem for JSON files for some
    IPFS-related project. Since I had already done something similar
    for nix expressions
    (https://github.com/Profpatsch/nixpkgs/blob/43a5946dd3f2059f960f517f929b174f7099094d/lib/types-simple.nix)
    I explained my implementation. An interesting question that came
    up: What if you don’t want the type specifications to be literal
    functions in an untyped setting, but make them data (e.g. by
    representing them in JSON) that can only be combined in a certain
    way.

2018-12-13

  • Missed the first part, joined after lunch (Appartment search)
    It was mostly a hacking session in the afternoon.
    Since I had to organize additional appartment-related things, I
    wasn’t able to continue working on the tools matrix very much.
    The event ended with a thank-you session & continued hacking while
    people were slowly leaving.
  • Tansy
    Tansy is working on a build system similar to bazel, pants. It was
    created by ex-Googlers and used primarily for its excellent Scala
    support (because sbt is a horror show).
    I brought up the notion that build tools tend to be able to
    integrate support for different languages, but don’t play fair when
    it comes to integrate themselves into other build systems. For
    example nix assumes access to /nix, bazel uses a daemon with long
    startup time and makes it hard to inject e.g. a prebuilt protobuf.
3 Likes