Currently, the hydra.nixos.org queue contains 1000s of Darwin builds that all depend on a stdenv-darwin that previously failed. However, before, first createStep() would construct a dependency graph for each build, then getQueuedBuilds() would discover that one of the steps had failed previously and discard all those steps. Since the graph construction involves a lot of uncached calls to isValidPath(), this took several seconds per build. Now createStep() detects the previous failure right away and bails out.
To start hacking on Hydra, run:
$ nix-shell
$ ./configure $configureFlags --prefix=/opt/hydra
$ make
$ make install
Or, if you just want to build from source (on x86_64-linux):
$ nix-build -A build.x86_64-linux release.nix
Description
Languages
Perl
70.5%
C++
15.5%
Nix
6%
PLpgSQL
3%
Shell
2.3%
Other
2.6%