On Friday, 6 May 2016 at 08:07:30 UTC, Pjotr Prins wrote:
At Dconf we had a discussion on creating reproducible builds of
the D compilers. One thing that is required is bootstrapping
the build. In GNU Guix we start from a working C compiler which
is a reasonable starting point (it could have been LISP instead
;)
For D this means that even if all components of the compilers
are written in D we should have a (chain of) compilation steps
that can be initiated from a C or C++ compiler. This is still
the case today, but I want to highlight this point here so we
do not lose that facility.
GNU Guix can be used as a reproducible reference build system
where we capture the bootstrapping process nicely and test the
builds on the build farm(s) whenever something changes.
I like the idea.
I thought about that too but would not use GNU Guix for it.
I would suggest to use Nix -> http://nixos.org/
AFAIK GNU Guix uses some parts of Nix and I think the community
behind it is not as big.
There are also packages for dmd on Nix already.
I also was able to get the ddmd frontent version of dmd running
on Nix.
Nix would be the perfect system to base all the testing on
because it's very easy to distribute entire system configurations
over multiple computers.
So once everything is setup correctly and the knowledge is there,
it makes administering entire server farms pretty comfortable.